Entrada
Um número inteiro não negativo ne uma sequência não vazia scontendo apenas caracteres alfanuméricos e sublinhados _. O primeiro caractere de snão é _. Os sublinhados de ssão interpretados como espaços em branco que podem ser preenchidos com outros caracteres.
Definimos uma sequência infinita de "seqüências infinitas" da seguinte maneira. A corda é repetida apenas infinitamente várias vezes. Para todos , a string é obtida preenchendo seus espaços em branco com os caracteres de , para que o primeiro de seja substituído por , o segundo de , e assim por diante. Como a primeira letra de não é , todo espaço em branco é preenchido eventualmente, e nós denotamos pela cadeia infinita em que todos foram substituídos por seu valor final.s1 = s s s...sk > 1sk+1sks1_sks1[0]s1[1]s_s∞_
Resultado
Os primeiros ncaracteres de como uma sequência.s∞
Exemplo
Considere as entradas n = 30e s = ab_c_. Nós temos
s1 = ab_c_ab_c_ab_c_ab_c_ab_c_ab_c_ab_c_...
Substituindo os espaços em branco de , temoss1s1
s2 = abacbab_ccab_caabbc_abcc_abacbab_cc...
Substituímos novamente os espaços em branco, o que resulta ems1
s3 = abacbabaccabbcaabbc_abcccabacbab_cc...
Mais uma substituição:
s4 = abacbabaccabbcaabbcaabcccabacbabbcc...
A partir disso, já podemos deduzir os 30 primeiros caracteres , que sãos∞
abacbabaccabbcaabbcaabcccabacb
Esta é a saída correta.
Regras
Você pode escrever um programa completo ou uma função. A contagem de bytes mais baixa vence e as brechas padrão não são permitidas. Falha na entrada incorreta é aceitável.
Casos de teste
0 "ab__" -> ""
1 "ab__" -> "a"
3 "ab__" -> "aba"
20 "ab" -> "abababababababababab"
20 "ab__" -> "abababababababababab"
20 "ab_" -> "abaabbabaabaabbabbab"
30 "ab_c_" -> "abacbabaccabbcaabbcaabcccabacb"
50 "ab_a_cc" -> "abaabccabaaaccabbacccabcaaccabbaaccabaaaccabcaccca"
50 "abc____" -> "abcabcaabcbcaaabcbcbcabcaaababccbcbabccabcabcaaaba"