#L3594. 「CEOI2021」报纸
「CEOI2021」报纸
题目描述
Ankica 和 Branko 在 个点 条边的无向连通图上玩追逐游戏:
- 游戏轮次进行,每轮:
- Ankica 猜 Branko 在某个点 ,猜中则游戏结束。
- 若未猜中,Branko 沿一条边移动到相邻点(不能停留)。
- 给定图,判断 Ankica 是否有必胜策略(无论 Branko 初始位置和移动方式如何,都能在有限轮内抓住他)。
- 若有,还需输出最少轮数 及对应的猜测序列 。
输入格式
第一行两个整数 和 (),表示点数和边数。
接下来 行,每行两个整数 ,表示一条无向边。
图保证连通且无重边。
输出格式
若无必胜策略,输出一行 NO。
否则:
YES
k
a_1 a_2 ... a_k
样例
样例 1
输入:
7 6
1 2
1 3
1 4
1 5
1 6
1 7
输出:
YES
2
1 1

解释:星形图,中心是 1。若 Branko 初始在 1,第一轮猜 1 就中;否则他必在某个叶子,第一轮猜 1 不中,Branko 只能移动到 1,第二轮猜 1 必中。
样例 2
输入:
6 6
1 2
2 3
3 1
1 4
2 5
3 6
输出:
NO

解释:三角形 {1,2,3} 上每个点有两个邻居,Branko 总可以躲到与 Ankica 猜测不同的点。
数据范围与提示
| 子任务 | 附加条件 | 分值 |
|---|---|---|
| 1 | 12 | |
| 2 | ,每个节点 和 相连 | 8 |
| 3 | 80 |
部分分规则:
- 正确输出
YES但无策略 → 得 50% 分数 - 正确输出
YES且给出非最优策略()→ 得 75% 分数 - 可以证明最优策略轮数不超过