#lydlx06x0B23. 约翰的旅行
约翰的旅行
题目描述
约翰买了一辆新车,想要坐车去探望他的朋友们。
他的朋友数量很多,城镇上的每条街上都有他的朋友。
已知约翰所在的城镇,有 条街道(编号 到 ), 个路口(编号 到 ),每条街道都被两个路口连接,任意两条街道之间都是互通的。
城镇的街道和路口构成了一个无向连通图。
现在请你帮他找出一个旅行方案使得他从他的家所在的路口出发,经过所有的街道且每条街道只走一次,并且最终可以回到出发点。
输入格式
输入包含多组测试用例。
每组测试用例包含若干行,每行包含三个整数 ,表示路口 和路口 之间有一条街道 。
假设每组测试用例中,第一行输入的 和 中,数值较小的那个路口,即为约翰的家所在的路口。
当输入 0 0 时,表示该组测试用例结束输入。
当一组测试用例结束输入后,再次输入 0 0 时,表示所有输入结束。
输出格式
若存在方案,则按顺序输出方案中经过的街道的编号(每条街道只经过一次,且最后回到起点)。
若存在多种方案,则输出字典序最小的那个。
若不存在方案,则输出 Round trip does not exist.。
每组测试用例的输出单独占一行。
样例
输入样例:
1 2 1
2 3 2
3 1 6
1 2 5
2 3 3
3 1 4
0 0
1 2 1
2 3 2
1 3 3
2 4 4
0 0
0 0
输出样例:
1 2 3 5 4 6
Round trip does not exist.
样例解释
第一组测试用例:
- 街道:1连接(1,2),2连接(2,3),3连接(3,1),4连接(3,1),5连接(1,2),6连接(3,1)
- 实际上同一个路口对之间可能有多个街道(编号不同)。
- 存在欧拉回路(每个路口度数为偶数),字典序最小的街道序列是 1 2 3 5 4 6。
第二组测试用例:
- 街道:1(1,2),2(2,3),3(1,3),4(2,4)
- 图不连通或者存在奇度顶点(具体看:1度=2,2度=3,3度=2,4度=1),不存在欧拉回路,输出
Round trip does not exist.。
数据范围
- (街道数量)
- (路口数量)
时空限制
- 时间限制:1 秒
- 空间限制:64 MB