Étant donné une chaîne s composé de lettres minuscules, telles que
aabaaababbbbaaba
et un nombre entier positif n , tel que 4
, une sortie longueur - n chaîne t de telle sorte que lorsque t est répété à la longueur de s , ils ont autant de caractères communs que possible. Pour l'exemple donné, la sortie optimale serait aaba
, car elle a treize caractères en commun avec la chaîne cible:
s: aabaaababbbbaaba
t: aabaaabaaabaaaba (aaba)
^^^^^^^^ ^ ^^^^
et pas possible t a plus. Cependant, pour aaaaaab
, il existe deux sorties possibles: aaaa
et aaba
, qui ont chacune 6 caractères en commun avec la chaîne cible:
s: aaaaaab
t: aaaaaaaa (aaaa)
^^^^^^
s: aaaaaab
t: aabaaaba (aaba)
^^ ^^^^
Soit aaaa
ou aaba
peut être sorti, ou les deux si vous le souhaitez. Notez que s n'est jamais répété; la fin a
dans les deux valeurs répétées de t est simplement ignorée.
Cas de test
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
Règles
- Vous pouvez supposer que l'entrée ne sera jamais qu'une chaîne non vide de lettres minuscules et un entier positif non supérieur à la longueur de la chaîne.
- Vous pouvez prendre les entrées dans n'importe quel format standard et dans n'importe quel ordre.
- Vous pouvez sortir une seule chaîne, ou plusieurs chaînes sous la forme d'un tableau, séparées par des lignes ou des espaces, etc.
- Votre code doit être terminé pour chaque cas de test en moins d'une minute sur un ordinateur assez moderne.
- C'est du code-golf , alors faites en sorte que votre code soit le plus court possible.
2 abb -> ba
où il est construit sous la forme suivante (b)[ab]a
: l'index (b)
est ignoré, [ab]
correspond.