tło
Matrioszka lalki (albo Rosyjski gniazdowania lalki) to zbiór lalek, które mieszczą się wewnątrz siebie. Przypadkowo pomieszałem moją kolekcję lalek matryoshka i nie pamiętam, która z nich wchodzi do środka.
Cel
Biorąc pod uwagę listę unikatowych ciągów, posortuj je w zagnieżdżone lalki Matrioszka. Każdy sznur jest indywidualną lalką, a lalka matryoshka to lista sznurków.
Zasady
Niech min(a,b)będzie leksykograficzną miną łańcuchów ai b. Niech a ⊂ boznacza, że ajest to podłańcuch b. Następnie,
- Lista lalek matryoshka musi być posortowana leksykograficznie
- Łańcuch
amoże pasować do łańcucha,bjeślia ⊂ b - Jeśli
a ⊂ bia ⊂ c, toawejdzie do środkamin(b,c) - Jeśli jedno
a ⊂ ci drugieb ⊂ c, alea ⊄ bb ⊄ awtedy tylkomin(a,b)wejdzie do środkac - Jeśli zarówno
a ⊂ cab ⊂ c, a takżea ⊂ b, to tylkobbędzie wejść do środkac. Tzn. Superstruny poprzedzają podciągi, aby matryoshka nie została przedwcześnie zakończona.
Przykłady
In:
hahaha, hah, lol, lololol, bahaha, bah, haha, ah
Out:
bahaha, bah, ah
hahaha, haha, hah
lololol, lol
In:
aa, aaaa, a, aaaaaaaaaa
Out:
aaaaaaaaaa, aaaa, aa, a
ab, ba, aba, bab? Zgodnie z regułą 3 oba powinny abi bapowinny wchodzić aba, a zgodnie z regułą 4 banie mogą wchodzić w ani abaani bab.