#U1920OG2. Favorite Colors
Favorite Colors
Farmer John 的 N 头奶牛(1≤N≤2⋅10)每头都有一种最喜欢的颜色。奶牛们的编号为 1…N,每种颜色也可以用 1…N 中的一个整数表示。存在 M 对奶牛 (a,b),奶牛 b 仰慕奶牛 a(1≤M≤2⋅10)。有可能 a=b,此时一头奶牛仰慕她自己。对于任意颜色 c,如果奶牛 x 和 y 各仰慕一头喜欢颜色 c 的奶牛,那么 x 和 y 喜欢的颜色相同。
给定这些信息,求一种奶牛喜欢颜色的分配方案,使得每头奶牛最喜欢的颜色中不同颜色的数量最大。由于存在多种符合这一性质的分配方案,输出字典序最小的(这意味着你应当依次最小化分配给奶牛 1…N 的颜色)。
输入格式(文件名:fcolor.in):
输入的第一行包含 N 和 M。以下 M 行每行包含两个空格分隔的整数 a 和 b(1≤a,b≤N),表示奶牛 b 仰慕奶牛 a。同一对奶牛可能会在输入中多次出现。
输出格式(文件名:fcolor.out):
对于 1…N 中的每一个 i,用一行输出分配给奶牛 i 的颜色。
输入样例:
9 12
1 2
4 2
5 8
4 6
6 9
2 9
8 7
8 3
7 1
9 4
3 5
3 4
输出样例:
1
2
3
1
1
2
3
2
3
在下图中,用粗边框圆表示的是最喜欢颜色 1 的奶牛。
测试点性质:
- 测试点 2-3 满足 N,M≤10。
- 测试点 4-10 没有额外限制。