寻宝路线
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
寻宝活动中共有 个互不相同的藏宝点,每个藏宝点用一个仅由小写英文字母组成的字符串表示。 这些藏宝点按寻宝路线依次排列为 ,其中 紧跟在 后面。
33DAI 拿到了 条线索,每条线索是一行两个字符串 与 ,表示在寻宝路线中 紧跟在 后面;这些线索的先后顺序被打乱了。
给定 与这 条线索,请你还原出这条寻宝路线。整场活动包含 个场景,你需要对每个场景分别还原路线。
输入格式
从文件 hunt.in 读入数据。
输入的第一行包含一个整数 ,表示场景数。
接下来依次给出 个场景,每个场景的格式为:
- 第一行包含一个整数 ,表示该场景中藏宝点的个数;
- 接下来 行,每行包含两个字符串 与 ,中间用一个空格隔开,表示 紧跟在 后面。 这些行的先后顺序是任意的。
输出格式
输出到文件 hunt.out。
按输入顺序依次处理每个场景。对于第 个场景( 从 开始):
- 先输出一行
Scenario #i:; - 再输出 行,每行一个字符串,依次为该场景寻宝路线上的 个藏宝点;
- 最后额外输出一个空行。
最后一个场景之后同样要输出这个空行。
2
3
b a
a c
5
zoo bar
bar foo
foo baz
baz qux
Scenario #1:
b
a
c
Scenario #2:
zoo
bar
foo
baz
qux
样例 1 解释
第一个场景的两条线索是「 紧跟在 后面」与「 紧跟在 后面」,
所以路线是 b、a、c。
第二个场景的路线是 zoo、bar、foo、baz、qux,这些线索的输入顺序被打乱了。
本例输出中每个场景之后都有一个空行,最后一个场景之后的空行在代码块里表现为末尾的空行。
1
3
mango apple
apple banana
Scenario #1:
mango
apple
banana
样例 2 解释
路线是 mango、apple、banana。
样例 3
样例 4
数据范围
对于所有测试数据,保证:
- ;
- ;
- 单个测试文件中所有场景的 之和不超过 ;
- 每个字符串的长度在 到 之间,且仅由小写英文字母
a到z组成; - 同一个场景内的 个字符串互不相同;
- 给出的 条线索恰好构成一条依次经过该场景全部 个藏宝点的链, 也就是说,路线一定存在且唯一。
子任务
本题共 20 个测试点,按测试点计分:
| 测试点 | 分值 | 每个测试点 | 特殊限制 |
|---|---|---|---|
| 每个字符串的长度都是 ,, | |||
| , | |||
| 无额外限制 |
每个测试点单独评分,全部测试点的得分之和即为本题得分。