Wyjaśnienie
Dwa ciągi można potasować, przerywając ich litery, aby utworzyć nowy ciąg, podobnie jak dwa stosy kart można potasować, tworząc pojedynczy stos.
Na przykład ciągi HELLOi WORLDmogą być tasowane, aby utworzyć HWEOLRLLOD, lub HEWORLLLDO, może po prostu HELLOWORLD.
To nie jest tasowanie, jeśli pierwotna kolejność liter nie zostanie zachowana. Na przykład, Dw WORLDnigdy nie może pojawić się, zanim Rpo tasuje. Oznacza to, że EHLLOWRDLOna przykład nie jest tasowaniem HELLOi WORLD, mimo że zawiera wszystkie oryginalne litery.
Sznurek jest przetasowaniem bliźniaków, jeśli można go uformować przez tasowanie dwóch identycznych strun. Na przykład ABACBDECDEjest tasowaniem bliźniaków, ponieważ można go utworzyć przez tasowanie ABCDEi ABCDE. DBEACBCADEnie jest tasiemkiem bliźniaków, ponieważ nie można go utworzyć przez tasowanie dwóch identycznych strun.
Szczegóły programu
Biorąc pod uwagę ciąg wejściowy, wypisuje, 0jeśli nie jest to losowy los bliźniaków, i wyprowadza jeden z bliźniaczych ciągów, jeśli jest to losowy los bliźniaków.
Możesz założyć, że łańcuch wejściowy ma długość od czterech do dwudziestu znaków i składa się wyłącznie z wielkich liter alfabetu. Powinien być w stanie działać w rozsądnym czasie, powiedzmy, poniżej 10 minut.
To jest golf golfowy, więc wygrywa najkrótsze rozwiązanie.
Przykład I / O
> ABACBDECDE
ABCDE
> DBEACBCADE
0
> FFFFFF
FFF
> FFGGG
0
> ABBA
0
> AABB
AB
> AABAAB
AAB
FFGGGaby był spójny.
that the input string has a length inclusively between four and twenty charactersi nie mów mi: „nigdy nie ufaj wejściom użytkownika!”, „Nigdy nie ufaj specyfikacji!”