输入:
两个字符串(注意:输入顺序很重要)。
输出:
两个单词/句子都从一行开始,中间有一个空行。他们“水平”“彼此相邻”行走。但是,当他们在同一位置有相同的性格时,他们会互相交叉,然后继续“彼此相邻”行走。
令您困惑?让我们举个例子:
输入:Words crossing over
&Ducks quacking
:
Word quack n
s i g
Duck cross n over
挑战规则:
- 在“越过”之后,我们总是总是先走直线,然后才能再次越过(请参见{1}上方的测试用例-
ing
相等,但是在越过之后i
,我们首先必须回去笔直走(因此忽略n
),然后我们才能再次跨过g
)。 - 输入的长度可以不同,在这种情况下,较长的输入将继续沿直线行走(请参见测试用例1、2、4和6)。
- 两个输入可以相同(请参见测试用例3)。
- 输入将不包含任何选项卡或换行符。
- 空格将被视为相同的字符(如边沿情况)而忽略,在这种情况下,其后的下一个(非空格)字符(如果有的话)将相交(请参见测试用例3、5和6)。
- 输入在同一位置上完全不能有相邻(非空格)字符,在这种情况下,它们都只能水平地走直线(请参见测试用例2)。
- 即使第一个字符相等,我们也总是分开两行(请参见测试用例3和6)。
- 尾随空格和一条尾随换行符是可选的。
- 您可以假定输入将仅包含可打印的ASCII字符(不包括换行符和制表符)。
- 输入是区分大小写的,所以
A
和a
是不相等的,并且不会相交(请参见测试用例7)。 - 两个输入长度都将始终至少为2。
- 输入和输出可以采用任何合理的格式。可以是带有换行符的单个String;字符串数组/列表;打印到STDOUT;2D字符数组;等等
一般规则:
- 这是代码高尔夫球,因此最短答案以字节为单位。
不要让代码高尔夫球语言阻止您发布使用非代码高尔夫球语言的答案。尝试针对“任何”编程语言提出尽可能简短的答案。 - 标准规则适用于您的答案,因此您可以使用STDIN / STDOUT,具有正确参数的函数/方法和返回类型的完整程序。你的来电。
- 默认漏洞是禁止的。
- 如果可能的话,请添加一个带有测试代码的链接。
- 另外,如有必要,请添加说明。
测试用例:
1. Input: "Words crossing over" & "Ducks quacking"
1. Output:
Word quack n
s i g
Duck cross n over
2. Input: "bananas" & "ananas"
2. Output:
bananas
ananas
3. Input: "I see my twin!" & "I see my twin!"
3. Output:
I e y w n
s e m t i !
I e y w n
4. Input: "Is the weather nice?" & "Not really, no.."
4. Output:
Is th ally, no..
e
Not r weather nice?
5. Input: "Codegolf & Programming Puzzles" & "The golfer might solve puzzles"
5. Output:
Code o f & Programming P z l s
g l u z e
The o fer might solve p z l s
6. Input: "Can you turn the lights off?" & "Can you try to solve this?"
6. Output:
C n o urn the ve s off?
a y u t l t
C n o ry to so igh his?
7. Input: "one Ampere" & "two apples"
7. Output:
one Am les
p
two ap ere
8. Input: "Words crossing" & "Words Quacking"
8. Output:
W r s cross n
o d i g
W r s Quack n