#YHM66101. 树形博弈
树形博弈
树形博弈
题目描述
给定 棵有根树。 每棵树的根节点上初始有一块石子。
两个人 A(先手)、B(后手)轮流进行游戏,规则如下:
- 每一轮玩家任选任意一棵树上的一颗石子。
- 将这颗石子从当前节点移动到它的任意一个子节点。
- 石子只能向下走,不能向上、不能停留。
如果一名玩家无法操作(所有石子都在叶子节点),该玩家判负,对方获胜。
双方均采用最优策略。
请你判断先手 A 是否必胜,若必胜输出 Yes,否则输出 No。
博弈核心保证
每棵树独立
输入格式
第一行一个整数 ,表示树的数量。
接下来依次输入 棵树: 对于每一棵树:
- 第一行一个整数 ,表示该树的节点数。
- 接下来 行,每行两个整数 ,表示树上一条边。 规定每棵树的根为节点 。
输出格式
若先手必胜,输出 Yes;否则输出 No。
样例输入 #1
2
3
1 2
1 3
3
1 2
2 3
样例输出 #1
Yes
数据范围
- 所有树总节点数
- 保证每棵树都是以 为根的合法有根树
测试点信息(20个测试点)
| 测试点编号 | 分值 | 数据范围&特性 |
|---|---|---|
| 1–2 | 10 | |
| 3–4 | ||
| 5–6 | ||
| 7–8 | ||
| 9–10 | ||
| 11–12 | 全部树为链型 | |
| 13–14 | ||
| 15–16 | ||
| 17–18 | ||
| 19–20 |