#L3594. 「CEOI2021」报纸

「CEOI2021」报纸

题目描述

Ankica 和 Branko 在 NN 个点 MM 条边的无向连通图上玩追逐游戏:

  • 游戏轮次进行,每轮:
    1. Ankica 猜 Branko 在某个点 aia_i,猜中则游戏结束。
    2. 若未猜中,Branko 沿一条边移动到相邻点(不能停留)。
  • 给定图,判断 Ankica 是否有必胜策略(无论 Branko 初始位置和移动方式如何,都能在有限轮内抓住他)。
  • 若有,还需输出最少轮数 kk 及对应的猜测序列 a1,a2,,aka_1, a_2, \dots, a_k

输入格式

第一行两个整数 NNMMN1MN(N1)2N-1 \le M \le \frac{N(N-1)}{2}),表示点数和边数。
接下来 MM 行,每行两个整数 ui,viu_i, v_i,表示一条无向边。
图保证连通且无重边。


输出格式

若无必胜策略,输出一行 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 1N201 \le N \le 20 12
2 1N103, M=N11 \le N \le 10^3,\ M = N - 1,每个节点 u=1,,N1u = 1, \ldots, N-1u+1u+1 相连 8
3 1N1031 \le N \le 10^3 80

部分分规则

  • 正确输出 YES 但无策略 → 得 50% 分数
  • 正确输出 YES 且给出非最优策略(k5Nk \le 5N)→ 得 75% 分数
  • 可以证明最优策略轮数不超过 5N5N