#1172. How Many Tables
How Many Tables
题目描述
今天是 Ignatius 的生日,他邀请了许多朋友。晚餐时间到了,他想知道至少需要多少张桌子。需要注意的是,并不是所有朋友都互相认识,而且朋友们不愿意和陌生人同桌。
一个重要规则是:如果告诉你 A 认识 B,B 认识 C,那么 A、B、C 互相认识,可以坐在一张桌子上。
例如:如果告诉你 A 认识 B,B 认识 C,D 认识 E,那么 A、B、C 可以坐在一张桌子上,而 D 和 E 必须坐在另一张桌子上。所以 Ignatius 至少需要 张桌子。
输入格式
输入以一个整数 开始(),表示测试用例的数量。接下来是 组测试用例。
每个测试用例以两个整数 和 开始()。
表示朋友的数量,这些朋友从 到 编号。接下来有 行,每行包含两个整数 和 (),表示朋友 和朋友 互相认识。
两个测试用例之间有一个空行。
输出格式
对于每个测试用例,输出 Ignatius 至少需要的桌子数量。不要输出任何多余的空格或换行。
测试样例
2
5 3
1 2
2 3
4 5
3 1
1 2
2
2
解释
- 第一个测试用例中,有两组朋友:{1, 2, 3} 和 {4, 5},需要 2 张桌子。
- 第二个测试用例中,有两组朋友:{1, 2} 和 {3},需要 2 张桌子。