Đầu vào:
Hai chuỗi (LƯU Ý: thứ tự đầu vào là quan trọng).
Đầu ra:
Cả hai từ / câu bắt đầu trên các dòng với một dòng trống ở giữa chúng. Họ 'đi bộ' theo chiều ngang 'cạnh nhau'. Nhưng khi chúng có cùng một nhân vật ở cùng một vị trí, chúng giao nhau và sau đó tiếp tục đi 'cạnh nhau'.
Bạn bối rối nói gì? Hãy cho một ví dụ:
Đầu vào: Words crossing over
& Ducks quacking
:
Word quack n
s i g
Duck cross n over
Quy tắc thử thách:
- Trước tiên, chúng tôi luôn quay lại đi trên một đường thẳng sau khi chúng tôi 'vượt qua' trước khi chúng tôi có thể vượt qua một lần nữa (xem trường hợp thử nghiệm ở trên {1} - nơi
ing
bằng nhau, nhưng sau khi chúng tôi tiếp tụci
, trước tiên chúng tôi phải quay lại đi thẳng (do đó bỏ quan
), trước khi chúng ta có thể đi qua lạig
). - Các đầu vào có thể có độ dài khác nhau, trong trường hợp đó, đầu vào dài hơn tiếp tục đi trên một đường thẳng (xem các trường hợp thử nghiệm 1, 2, 4 & 6).
- Cả hai đầu vào có thể giống nhau (xem trường hợp thử nghiệm 3).
- Các đầu vào sẽ không chứa bất kỳ tab nào cũng như dòng mới.
- Các không gian được bỏ qua dưới dạng các ký tự giống nhau (như trường hợp cạnh) , trong trường hợp đó, ký tự tiếp theo (không phải khoảng trắng ) sau đó - nếu có - sẽ thay thế (xem trường hợp kiểm tra 3, 5 & 6).
- Các đầu vào có thể không có ký tự liền kề (không phải khoảng trắng) trên cùng một vị trí, trong trường hợp cả hai chỉ đi theo một đường thẳng theo chiều ngang (xem trường hợp thử nghiệm 2).
- Ngay cả khi ký tự đầu tiên bằng nhau, chúng ta luôn bắt đầu cách nhau hai dòng (xem trường hợp thử nghiệm 3 & 6).
- Không gian lưu trữ và một dòng mới duy nhất là tùy chọn.
- Bạn có thể giả sử các đầu vào sẽ chỉ chứa các ký tự ASCII có thể in được (loại trừ các dòng và tab mới).
- Các đầu vào phân biệt chữ hoa chữ thường, vì vậy
A
vàa
không bằng nhau và sẽ không giao nhau (xem trường hợp thử nghiệm 7). - Cả hai độ dài đầu vào sẽ luôn luôn có ít nhất 2.
- Đầu vào và đầu ra có thể ở bất kỳ định dạng hợp lý. Có thể là một Chuỗi đơn với các dòng mới; một chuỗi-mảng / danh sách; in ra STDOUT; Mảng 2D của các nhân vật; v.v.
Quy tắc chung:
- Đây là môn đánh gôn , vì vậy câu trả lời ngắn nhất bằng byte thắng.
Đừng để ngôn ngữ mã-golf ngăn cản bạn đăng câu trả lời với các ngôn ngữ không mã hóa. Cố gắng đưa ra một câu trả lời càng ngắn càng tốt cho ngôn ngữ lập trình 'bất kỳ'. - Các quy tắc chuẩn áp dụng cho câu trả lời của bạn, vì vậy bạn được phép sử dụng STDIN / STDOUT, các hàm / phương thức với các tham số thích hợp và kiểu trả về, các chương trình đầy đủ. Cuộc gọi của bạn.
- Lỗ hổng mặc định bị cấm.
- Nếu có thể, vui lòng thêm một liên kết với một bài kiểm tra cho mã của bạn.
- Ngoài ra, xin vui lòng thêm một lời giải thích nếu cần thiết.
Các trường hợp thử nghiệm:
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