/*
HDU 6105 - Gameia [ 非平等博弈 ] | 2017 Multi-University Training Contest 6
题意:
Bob 可以把一个点和周围所有点都染黑,还有 k 次割掉一条边的操作
Alice 可以把一个点染白
A先B后,问谁赢
分析:
如果图中不存在两两匹配,则Bob输
每一次两两匹配都需要一次割边,除了最后一次
如果没能力割边,Bob输
*/
#include <bits/stdc++.h>
using namespace std;
int t, n, k;
vector<int> G[505];
bool ans;
int dfs(int x)
{
int s = 1;
for (auto& y : G[x])
s += dfs(y);
if (s == 2) k--;
if (s > 2) ans = 0;
return s % 2;
}
int main()
{
scanf("%d", &t);
while (t--)
{
scanf("%d%d", &n, &k);
for (int i = 1; i <= n; i++) G[i].clear();
for (int i = 2; i <= n; i++)
{
int x; scanf("%d", &x);
G[x].push_back(i);
}
if (n&1) puts("Alice");
else
{
ans = 1;
dfs(1);
if (!ans || k < -1) puts("Alice");
else puts("Bob");
}
}
}

  

最新文章

  1. Python学习总结 01 配置环境
  2. OrcharNoCMS中的发布订阅使用
  3. HighChats图表控件显示精度小数点的方法
  4. Scale和Resolution的含义及转换算法
  5. PAT (Basic Level) Practise:1026. 程序运行时间
  6. android用ImageView显示网络图片
  7. Maven Profile标签
  8. EasyUi TreeGrid封装
  9. C语言作业(三)
  10. Android Wear 2.0 AlarmManager 后台定时任务
  11. Ruby数组方法整理
  12. ORM框架SQLAlchemy
  13. 异步是javascript的精髓
  14. c/c++ 标准顺序容器 之 push_back,push_front,insert,emplace 操作
  15. 无备份时用dbms_repair恢复坏块的方法
  16. Win7升Windows10有获取通知,但是就不推送的解决方法
  17. P4574 [CQOI2013]二进制A+B
  18. 8Manage PMP 项目管理工具
  19. [2018HN省队集训D8T1] 杀毒软件
  20. 六、使用media实现响应式布局

热门文章

  1. ES使用小结之索引Rollover
  2. Idea中maven的设置
  3. spark调优篇-oom 优化(汇总)
  4. 5.Linux常用排查命令
  5. 以太坊再爆高危漏洞!黑客增发ATN 1100万枚token事件始末
  6. javascript 的惯性运动
  7. java都13了, 8的新特性你还没不会用吗
  8. .Net C# Dictionary 和参数字符串互转
  9. c++11 用户定义字面量
  10. Springboot整合MybatisPlus