#ABC366G. 异或邻居

异或邻居

异或邻居

题目描述

给定一个具有 NN 个顶点、MM 条边的简单无向图。第 ii 条边双向连接顶点 uiu_iviv_i

请判断是否存在一种方式,在图的每个顶点上写入一个介于 1126012^{60} - 1 之间的整数,使得满足以下条件:

对于每个度数至少为 11 的顶点 vv,其所有相邻顶点(不包括 vv 本身)上写入的整数的总异或为 00

关于异或

两个非负整数 AABB 的异或,记为 ABA \oplus B,定义如下:

ABA \oplus B 的二进制表示中,第 2k2^kk0k \geq 0)位的数字为 11,当且仅当 AABB 的二进制表示中第 2k2^k 位的数字恰好有一个是 11;否则为 00

例如,35=63 \oplus 5 = 6(二进制:011101=110011 \oplus 101 = 110)。

一般来说,kk 个整数 p1,,pkp_1, \dots, p_k 的按位异或定义为 $(\cdots ((p_1 \oplus p_2) \oplus p_3) \oplus \cdots \oplus p_k)$。可以证明,这个结果与 p1,,pkp_1, \dots, p_k 的顺序无关。

输入格式

输入按以下格式从标准输入给出:

NN MM
u1u_1 v1v_1
u2u_2 v2v_2
\vdots
uMu_M vMv_M

输出格式

如果不存在满足条件的写入方式,输出 No

否则,设顶点 vv 上写入的整数为 XvX_v,按以下格式输出你的方案。如果存在多种方案,输出其中任意一种即可。

Yes X1X_1 X2X_2 \dots XNX_N

样例

3 3
1 2
1 3
2 3
Yes
4 4 4

其他可接受的方案包括写入 (2,2,2)(2,2,2)(3,3,3)(3,3,3)

2 1
1 2
No
1 0
Yes
1

可以写入介于 1126012^{60} - 1 之间的任意整数。

4 5
1 2
1 3
2 3
2 4
3 4
Yes
12 4 4 8

数据范围

  • 1N601 \leq N \leq 60
  • 0MN(N1)/20 \leq M \leq N(N-1)/2
  • 1ui<viN1 \leq u_i \lt v_i \leq N
  • 对于 iji \neq j,有 (ui,vi)(uj,vj)(u_i, v_i) \neq (u_j, v_j)
  • 所有输入值均为整数。

提示

答案不唯一,输出任意合法解即可。

难度 省选/NOI-
通过率
尝试 0
已通过 0
ID
3388
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签