Biorąc pod uwagę ciąg y składa się z małych liter, takich jak
aabaaababbbbaaba
oraz dodatnia liczba całkowita n , taka jak 4
, wypisuje ciąg n długości t taki, że gdy t jest powtarzane do długości s , mają one jak najwięcej wspólnych znaków. W podanym przykładzie optymalne wyjście byłoby aaba
, ponieważ ma trzynaście znaków wspólnych z ciągiem docelowym:
s: aabaaababbbbaaba
t: aabaaabaaabaaaba (aaba)
^^^^^^^^ ^ ^^^^
i żaden możliwy t nie ma więcej. Istnieją jednak aaaaaab
dwa możliwe wyniki: aaaa
i aaba
, z których każdy ma 6 znaków wspólnych z ciągiem docelowym:
s: aaaaaab
t: aaaaaaaa (aaaa)
^^^^^^
s: aaaaaab
t: aabaaaba (aaba)
^^ ^^^^
Albo aaaa
albo aaba
może być wyprowadzony, albo jedno i drugie, jeśli chcesz. Zauważ, że s nigdy się nie powtarza; końcowe a
obie powtarzane wartości t są po prostu ignorowane.
Przypadki testowe
Inputs -> Valid outputs
1 a -> a
1 aa -> a
2 aa -> aa
1 ab -> a b
2 ab -> ab
1 abb -> b
2 abb -> ab bb
2 ababa -> ab
2 abcba -> ab
2 aabbbbb -> bb (ab is not a valid output here)
3 aababba -> aab abb
3 aababbaa -> aab
3 asdasfadf -> asf
3 asdasfadfsdf -> asf adf
2 abcdefghijklmnopqrstuvwxyzyx -> yx
2 supercalifragilisticexpialidocious -> ic ii
3 supercalifragilisticexpialidocious -> iri ili ioi
4 supercalifragilisticexpialidocious -> scii
5 supercalifragilisticexpialidocious -> iapic
2 eeeebaadbaecaebbbbbebbbbeecacebdccaecadbbbaceebedbbbddadebeddedbcedeaadcabdeccceccaeaadbbaecbbcbcbea -> bb be
10 bbbbacacbcedecdbbbdebdaedcecdabcebddbdcecebbeeaacdebdbebaebcecddadeeedbbdbbaeaaeebbedbeeaeedadeecbcd -> ebbbdbeece ebdbdbeece
20 aabbbaaabaaabaaaabbbbabbbbabbbabbbbbabbaaaababbbaababbbaababaaaabbaaabbaabbbabaaabbabbaaabbaaaaaaaba -> aabbbbaaabbabbbaabba
Zasady
- Możesz założyć, że dane wejściowe będą zawsze niepustym ciągiem małych liter i dodatnią liczbą całkowitą nie większą niż długość łańcucha.
- Możesz pobrać dane wejściowe w dowolnym standardowym formacie i w dowolnej kolejności.
- Możesz wyprowadzić pojedynczy ciąg znaków lub więcej niż jeden w postaci tablicy oddzielonej znakami nowej linii lub spacjami itp.
- Twój kod musi kończyć się dla każdego przypadku testowego w mniej niż 1 minutę na dowolnym dość nowoczesnym komputerze.
- To jest gra w golfa , więc ustaw swój kod tak krótko, jak to możliwe.
2 abb -> ba
jeśli jest budowane, ponieważ (b)[ab]a
: wiodące (b)
jest ignorowane, [ab]
pasują.