首页 > 其他分享 >ZR #1179. 【线上训练 16】舔到

ZR #1179. 【线上训练 16】舔到

时间:2022-10-25 12:38:56浏览次数:68  
标签:16 int 入度 Alice 1179 偶数 ++ ans ZR


题目链接:​​传送门​​(没买的看不了)

又是这种树上博弈,在ZR看到好多这种T1了
虽然难度没那么大但做完总是觉得不稳妥
把当前树的集合分成两种情况,一个是所有节点入度都是奇数,一个是有的节点入度是偶数
这两个状态间一定可以互相转移,因为叶子节点的度数一定是奇数
样例1就是最简单的情况,所有的状态都可以转移到这个状态来看,这样是先手赢
如果有一个点的入度为偶数那么Alice就可以把局面转到那种最简单的情况,而且当前是自己操作
那么只要有一个点的入度为偶数那么就是Alice赢,否则Bob赢

#include <bits/stdc++.h>

using namespace std;
int n, d[1000005], a, b, ans = 1;

int main(int argc, char const *argv[]) {
scanf("%d", &n);
for (int i = 1; i < n; i++) scanf("%d%d", &a, &b), d[a]++, d[b]++;
for (int i = 1; i < n; i++) ans = ans & d[i];
if (n == 1 or !ans) puts("Alice");
else puts("Bob");
}


标签:16,int,入度,Alice,1179,偶数,++,ans,ZR
From: https://blog.51cto.com/lyle/5794469

相关文章

  • POJ 3748(C++的16进制读法 %x)
    P党写几小时的程序C++才几行……首先P的位运算有上限2^30此时即便是int64也会因为补码坑死人的到1shl31时 int64是负数故这个时候不能shr为多出好多位造成以......
  • AcWing 216. Rainbow的信号
    题目链接:​​传送门​​将权值转化成二进制来看,最多30位枚举每一位并且枚举一个右端点通过这个右端点判断有多少个左端点符合条件,累计贡献要注意单独讨论左端点等于右端......
  • LOJ #2012. 「SCOI2016」背单词
    题目链接:​​传送门​​显然第一个情况和第二个情况不如第三个更优并且他们可以避免,所以尽量构造第三种情况将每个字符倒着插入trie树,因为先放后面的字符串是更优的然后......
  • 苹果14Pro Max拆解:AFEM-8240、SKY58853-17、SKY52628、SKY5xx92-16模块
    近期,iFixit对苹果最新iPhone14的拆解终于完成了,认为这次iPhone14最值得点赞的不是更强的处理器,也不是卫星SOS功能和更大的摄像头,而是完全重新设计的内部结构——显示面......
  • 安装邮件服务Exchange2016
    拓扑图:推荐步骤:Ø 升级活动目录名字是benet.com,将电子邮件服务器加入到域使用域管理员登录Ø 安装Exchange依赖程序,安装Exchange2016Ø 在活动目录创建组织单元名字......
  • CF1716F
    与CF932E,CF1278F其实差不多捏。首先\(m\)中奇数个数是\(\left\lceil\frac{m}{2}\right\rceil\),偶数个数是\(\left\lfloor\frac{m}{2}\right\rfloor\)。下文为了方便......
  • 全球名校AI课程库(16)| Stanford斯坦福 · 计算机科学导论课程『Introduction to Comput
    ......
  • Codeforces 1674 E. Breaking the Wall
    题意给n个数的数列a[n],可以进行任意次操作,每次选取一个位置i,a[i]-=2,a[i-1]-=1,a[i+1]-=1,问最少几次操作可以让任意两个值<=0提示需要进行分类讨论,分成三种情况讨论1.......
  • day16 运动(上)
    概述:运动(动画),就是操作对应的dom元素发生变化,(这个变化要持续多次(修改样式)),每次间隔的时间是你肉眼察觉不到的(时间比较短).当到达目标位......
  • CF1716E
    感觉以前遇到过类似的操作,但是还是不会(考虑到两次相同的操作会相互抵消,并且答案与操作顺序无关,所以答案至多\(2^n\)种,考虑预处理出来。首先你得会分治求最大子段和,维护......