#P1800. Magic Trick

    ID: 801 远端评测题 3000ms 30MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>TUD Programming Contest 2004DarmstadtGermany

Magic Trick

本题没有可用的提交语言。

题目描述

背景

警告! 此问题描述包含严重剧透。它揭示了一个魔术背后的技巧。因此,如果有人向你展示这个魔术,而你仍想保持惊奇感,请不要继续阅读此问题描述。请停止阅读……现在!

问题

好吧,你还在阅读,显然你对魔术技巧毫无敬意。请感到羞愧。现在,以下是魔术的过程:魔术师会向你展示一个包含三个段落的文本,如下所示:

It was a horribly dark night.  
The moon was shining, but not much.  
A suspicious stranger entered the bar and went straight to John Doe.  
"I'm searching for aliens, can I borrow your computer?", he said.  

然后,他会让你在第一个段落中秘密选择一个单词。接着,你需要按照以下步骤操作:

  1. 计算你选择的单词的字符数(记为 XX)。
  2. 从你的单词开始,向后移动 XX 个单词。

重复这两个步骤,直到你到达第三个段落。然后告诉魔术师你已经完成。经过一些“魔法”后,他会告诉你你最终停留的单词。

在我们的定义中,一个“单词”是由连续的字母(A-Z,a-z)组成的。例如,“I'm”被视为两个单独的单词。

例如,假设你选择上述例子中的“night”。它有 55 个字符,因此你向后移动 55 个单词:“The”、“moon”、“was”、“shining”、“but”。现在的新单词是“but”。接着移动 33 个单词到“A”,然后 11 个到“suspicious”,然后 1010 个到“Doe”,最后 33 个到“searching”。现在你告诉魔术师你已经完成。他会说你最终停留在“searching”。

他是怎么知道的?其实,无论你从第一个段落的哪个单词开始,最终都会停留在“searching”。魔术师需要新的文本,并请你帮助他找出所有可能的结果(在上述例子中,“searching”是唯一的结果)。除了单词外,可能的结果还包括“-outside-”,表示可能会跳出第三个段落。此外,如果可能的结果超过三个,他就不感兴趣了。

输入

第一行包含场景的数量。对于每个场景,给出三行,分别代表三个段落。每行不超过 100000100000 个字符。每个段落至少包含一个单词。

输出

每个场景的输出以一行“Scenario #i:”开始,其中 ii 是从 11 开始的场景编号。然后按字母/字典顺序输出可能的结果(可能包括“-outside-”),每个单词占一行。单词以小写形式输出。不要重复列出结果。但如果可能的结果超过三个,则输出“-too many-”,并且不要输出任何结果。每个场景的输出以空行结束。

示例输入 1

4
It was a horribly dark night. The moon was shining, but not much.
A suspicious stranger entered the bar and went straight to John Doe.
"I'm searching for aliens, can I borrow your computer?", he said.
!pablo espanol!
!pablo espanol!
!pablo espanol!
c'mon howLongOrShortCanASingleWordBe?
a b c d e f g f e d c b a
54254#@%$^%^@4626^#^%^$hahaha#$@%#$@63456326
Hello buddy dance tango!
PleaseOhPleaseJumpOverMe
This is too much for me...

示例输出 1

Scenario #1:
searching

Scenario #2:
-outside-
espanol

Scenario #3:
-outside-
hahaha

Scenario #4:
-too many-

来源

TUD Programming Contest 2004, Darmstadt, Germany