题目描述
题目描述
小珅在遗迹探险时遇到了 个按钮,刚开始所有按钮都处于开状态。小珅的经验告诉他把所有按钮都关上触发神秘奖励,可是有些按钮按下时会让其他一些已经闭合的按钮弹开。
经过研究,每个按钮都对应着一个固定的弹开集合,当按下某个按钮时,该按钮对应的弹开集合中所有的按钮都会变为开状态。现在小珅想知道是否能让所有的按钮变为闭状态。如果能,输出最少步数以及具体操作方案;否则,输出 no solution。
输入格式
第一行输入一个正整数 ,表示按钮个数。
接下来 行描述每个按钮的弹开集合。第 行首先输入一个整数 ,接下来输入 个整数,表示按下第 个按钮时会变为开状态的按钮编号。
输出格式
如果不能使所有按钮都变为闭状态,输出 no solution。
否则,第一行输出最少操作步数,第二行依次输出具体操作的按钮编号。若存在多种最少操作方案,输出字典序最小的方案。
数据范围与约定
,。
可见测试数据
输入数据 1
6
2 2 3
0
2 4 5
0
0
0
输出数据 1
6
1 2 3 4 5 6
输入数据 2
10
7 2 4 5 6 8 9 10
7 3 4 5 6 8 9 10
6 4 5 7 8 9 10
5 5 6 7 9 10
5 6 7 8 9 10
4 7 8 9 10
3 8 9 10
2 9 10
1 10
0
输出数据 2
10
1 2 3 4 5 6 7 8 9 10
输入数据 3
18
5 2 3 12 13 16
6 3 7 8 9 13 17
4 4 7 10 16
7 5 6 7 10 12 13 17
8 6 7 8 11 13 14 15 16
3 7 11 12
6 8 9 12 16 17 18
5 9 11 13 15 18
2 10 12
5 11 12 13 17 18
4 12 13 14 16
5 13 14 15 17 18
3 14 15 16
3 15 17 18
3 16 17 18
2 17 18
1 18
0
输出数据 3
18
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18