#CSES1683. 行星与王国

行星与王国

题目背景

翻译自 CSES-1683 题。

题目描述

一个游戏中有 nn 个行星,通过 mm 条传送门连接。两个行星 aabb 属于同一个王国,当且仅当存在一条路径从 aabb 且从 bbaa。你的任务是确定每个行星所属的王国。

输入格式

第一行包含两个整数 nnmm:分别表示行星的数量和传送门的数量。行星编号为 1,2,,n1,2,…,n

接下来有 mm 行,每行包含两个整数 aabb:表示从行星 aa 可以通过传送门到达行星 bb

输出格式

首先输出一个整数 kk:表示王国的数量。

然后,对于每个行星,输出一个王国标签,标签范围在 11kk 之间。你可以输出任何有效的解。

样例

5 6
1 2
2 3
3 1
3 4
4 5
5 4
2
1 1 1 2 2

说明/提示

1n1051 \leq n \leq 10^5

1m21051 \leq m \leq 2 \cdot 10^5

1a,bn1 \leq a, b \leq n