Pesquisa de Substring

Dado um texto longo t e uma string s, pede-se que encontre todas as ocorrências de s no texto t. O objetivo é determinar as posições iniciais em t que coincidam com s.

Entrada

A primeira linha da entrada contém o texto t (1 ≤ |t| ≤ ).

A segunda linha da entrada contém a string s (1 ≤ |s| ≤ |t|).

Saída

Para cada ocorrência de s em t, imprima a posição inicial em t onde ela ocorre. As posições devem ser listadas em ordem crescente (do início ao fim do texto), separadas por um espaço. A indexação começa em 0.

Exemplos

Entrada

Saída

habababohabo
ba

2 4

barfoobarfoobarfoobarfoobarfoo
foobarfoo

3 9 15 21

Explicação

  1. habababohabo → habababohabo, habababohabo

  2. barfoobarfoobarfoobarfoobarfoo → barfoobarfoobarfoobarfoobarfoo, barfoobarfoobarfoobarfoobarfoo, barfoobarfoobarfoobarfoobarfoo, barfoobarfoobarfoobarfoobarfoo

Constraints

Time limit: 5 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue