分组
时间限制:1秒 内存限制:256M
【题目描述】
把 \(n\) 个人分成非空的两组,使得每个人都被分到一组,且同组中的人相互认识。要求两组的成员人数尽量接近。分组方案可能不存在,也可能有很多,现在请你来解决。
【输入格式】
输入第一行包含一个整数 \(n\),表示有 \(n\) 个人,编号为 \(1\) 到 \(n\)。
接下来 \(n\) 行按照顺序给出每个人所认识的人的编号,以 0 结束,注意 \(A\) 认识 \(B\),并不意味着 \(B\) 认识 \(A\)。
【输出格式】
如果不存在分组方法,输出“No solution”(不包含引号),否则输出两组的人数(第 1 个数不比第 2 个数大)。
【输入输出样例1】
Input
5
2 3 5 0
1 4 5 3 0
1 2 5 0
1 2 3 0
4 3 2 1 0
Output
2
3
【测试点性质】
对对于 50% 分的数据,满足 \(n≤100\)
【来源】
Mr.he
《算法竞赛》291页,UVa1627