Problema da separação das sílabas (versão light)
Contents
Dificuldade única
Geralmente um processador de textos utiliza algum algoritmo para fazer a hifenização das palavras. Neste algoritmo são consideradas posições onde a palavra pode ser divida. Por exemplo, a palavra programação têm as seguintes possibilidades para a divisão silábica:
pro-gramação progra-mação programa-ção
Faça um programa que, recebendo uma cadeia de caracteres (máximo de 50 caracteres) no formato abaixo, mostre todas as divisões silábicas possíveis (uma por linha) em ordem de preferência da palavra representada.
<letra0><dígito0><letra1><dígito1>...<letran><dígiton>
Onde:
- <letran> é uma letra minúscula do alfabeto.
- <dígiton> pode ser omitido e é um dígito de inteiro positivo no intervalo fechado entre 1 e 9.
Caso <digiton> seja um número par o ponto não pode sofre divisão silábica, caso seja impar poderá sofrer a divisão. Valores maiores são aqueles que indicam pontos onde há a preferência pela divisão.
Caso exista mais de um ponto com a mesma preferência, todas as opções devem ser exibidas, uma opção linha mostrando primeiro aquelas que o hífen aparece mais a esquerda.
Exemplo 1
Entrada
p2r4o5g2r4a5ma7ção
Saída
programa-ção pro-gramação progra-mação
Exemplo 2
Entrada
pro7gra9ma7ção
Saída
progra-mação pro-gramação programa-ção
Exemplo 3
Entrada
i2n3c4o8n2s7t6i9t8u7c2i4o5n6a4l
Saída
inconsti-tucional incons-titucional inconstitu-cional inconstitucio-nal in-constitucional