Memasukkan:
Dua string (CATATAN: urutan input penting).
Keluaran:
Kedua kata / kalimat tersebut dimulai pada baris dengan satu baris kosong di antaranya. Mereka 'berjalan' secara horizontal 'berdampingan'. Tetapi ketika mereka memiliki karakter yang sama di posisi yang sama, mereka saling silang, dan kemudian terus berjalan 'bersebelahan'.
Membingungkan Anda katakan? Mari kita beri contoh:
Masukan: Words crossing over
& Ducks quacking
:
Word quack n
s i g
Duck cross n over
Aturan tantangan:
- Kami selalu pertama kembali berjalan garis lurus setelah kami 'menyeberang' sebelum kita bisa menyeberang lagi (lihat test case di atas {1} - di mana
ing
sama, tetapi setelah kami menyeberangi
, pertama-tama kita harus kembali berjalan lurus (dengan demikian mengabaikann
), sebelum kita bisa menyeberang lagig
). - Input dapat memiliki panjang yang berbeda, dalam hal ini semakin lama berjalan dalam garis lurus (lihat kotak uji 1, 2, 4 & 6).
- Kedua input bisa sama (lihat test case 3).
- Masukan tidak akan mengandung tab atau baris baru.
- Spasi diabaikan sebagai karakter yang sama (sebagai case tepi) , dalam hal ini karakter selanjutnya (non-spasi) setelah itu - jika ada - yang melintas sebagai gantinya (lihat test case 3, 5 & 6).
- Input tidak boleh memiliki karakter yang berdekatan (non-spasi) pada posisi yang sama, dalam hal ini keduanya berjalan dalam garis lurus secara horizontal (lihat kotak uji 2).
- Bahkan jika karakter pertama sama, kami selalu memulai dua baris terpisah (lihat kasus uji 3 & 6).
- Ruang trailing dan satu garis baru trailing adalah opsional.
- Anda dapat berasumsi bahwa input hanya akan berisi karakter ASCII yang dapat dicetak (baris dan tab baru dikecualikan).
- Input peka huruf besar-kecil, sehingga
A
dana
tidak sama, dan tidak akan melintas (lihat uji kasus 7). - Kedua panjang input akan selalu minimal 2.
- Input & output dapat dalam format apa pun yang masuk akal. Dapat berupa String tunggal dengan baris baru; array-string / daftar; dicetak ke STDOUT; Array karakter 2D; dll.
Aturan umum:
- Ini adalah kode-golf , jadi jawaban tersingkat dalam byte menang.
Jangan biarkan bahasa kode-golf mencegah Anda memposting jawaban dengan bahasa non-codegolf. Cobalah untuk memberikan jawaban sesingkat mungkin untuk bahasa pemrograman 'apa saja'. - Aturan standar berlaku untuk jawaban Anda, jadi Anda diperbolehkan menggunakan STDIN / STDOUT, fungsi / metode dengan parameter yang tepat dan tipe pengembalian, program lengkap. Panggilanmu.
- Celah default tidak diperbolehkan.
- Jika memungkinkan, silakan tambahkan tautan dengan tes untuk kode Anda.
- Juga, silakan tambahkan penjelasan jika perlu.
Kasus uji:
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