Giải trình
Hai chuỗi có thể được xáo trộn bằng cách xen kẽ các chữ cái của chúng để tạo thành một chuỗi mới, giống như hai đống thẻ có thể được xáo trộn để tạo thành một đống.
Ví dụ, các chuỗi HELLO
và WORLD
có thể được xáo trộn để tạo thành HWEOLRLLOD
, hoặc HEWORLLLDO
, hoặc có lẽ đơn giản HELLOWORLD
.
Nó không phải là một sự xáo trộn nếu thứ tự ban đầu của các chữ cái không được giữ nguyên. Ví dụ, D
trong WORLD
không thể bao giờ xuất hiện trước R
sau khi bị xáo trộn. Điều này có nghĩa là EHLLOWRDLO
, chẳng hạn, không phải là sự xáo trộn HELLO
và WORLD
, mặc dù nó chứa tất cả các chữ cái gốc.
Một chuỗi là sự xáo trộn của cặp song sinh nếu nó có thể được hình thành bằng cách xáo trộn hai chuỗi giống hệt nhau. Ví dụ, ABACBDECDE
là một sự xáo trộn của cặp song sinh vì nó có thể được hình thành bằng cách xáo trộn ABCDE
và ABCDE
. DBEACBCADE
không phải là sự xáo trộn của cặp song sinh vì nó không thể được hình thành bằng cách xáo trộn hai chuỗi giống hệt nhau.
Chi tiết chương trình
Đưa ra một chuỗi đầu vào, đầu ra 0
nếu nó không phải là một cặp song sinh và xuất ra một trong các chuỗi sinh đôi nếu đó là một chuỗi các cặp song sinh.
Bạn có thể giả sử rằng chuỗi đầu vào có độ dài bao gồm từ bốn đến hai mươi ký tự và được cấu tạo hoàn toàn bằng các ký tự chữ cái in hoa. Nó sẽ có thể chạy trong một khoảng thời gian hợp lý, giả sử, dưới 10 phút.
Đây là mã golf, vì vậy giải pháp ngắn nhất sẽ thắng.
Ví dụ I / O
> ABACBDECDE
ABCDE
> DBEACBCADE
0
> FFFFFF
FFF
> FFGGG
0
> ABBA
0
> AABB
AB
> AABAAB
AAB
Tôi có một ví dụ (không chơi gôn) .
FFGGG
để làm cho nó phù hợp.
that the input string has a length inclusively between four and twenty characters
và đừng nói với tôi "không bao giờ tin vào đầu vào của người dùng!", "Không bao giờ tin vào thông số kỹ thuật!"