Difference between revisions of "Problema da separação das sílabas (versão light)"

From AdonaiMedrado.Pro.Br
Jump to: navigation, search
(New page: == 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 po...)
 
(Dificuldade única)
Line 11: Line 11:
 
Onde:
 
Onde:
 
*<letra<sub>n</sub>> é uma letra minúscula do alfabeto.
 
*<letra<sub>n</sub>> é uma letra minúscula do alfabeto.
*<digito<sub>n</sub>> é um dígito de inteiro positivo no intervalo fechado entre 1 e 9.
+
*<digito<sub>n</sub>> pode ser omitido e é um dígito de inteiro positivo no intervalo fechado entre 1 e 9.
  
 
Caso <digito<sub>n</sub>> 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 <digito<sub>n</sub>> 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 hifén aparece mais a esqueda.
 
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 hifén aparece mais a esqueda.
 +
 +
 +
=== Exemplo 1 ===
 +
 +
==== Entrada ====
 +
p2r4o5g2r4a5ma7ção
 +
 +
==== Saída ====
 +
programa-ção
 +
pro-gramação
 +
progra-mação
 +
 +
=== Exemplo 2 ===
 +
 +
==== Entrada ====
 +
pro7gra9ma7ção
 +
 +
==== Saída ====
 +
progra-maçao
 +
pro-gramaçao
 +
programa-çao
 +
 +
=== Exemplo 3 ===
 +
 +
==== Entrada ====
 +
i2n3c4o8n2s7t6i9t8u7c2i4o5n6a4l
 +
 +
==== Saída ====
 +
inconsti-tucional
 +
incons-titucional
 +
inconstitu-cional
 +
inconstitucio-nal
 +
in-constitucional

Revision as of 00:08, 8 March 2009

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><digito0><letra1><digito1>...<letran><digiton>

Onde:

  • <letran> é uma letra minúscula do alfabeto.
  • <digiton> 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 hifén aparece mais a esqueda.


Exemplo 1

Entrada

p2r4o5g2r4a5ma7ção

Saída

programa-ção
pro-gramação
progra-mação

Exemplo 2

Entrada

pro7gra9ma7ção

Saída

progra-maçao
pro-gramaçao
programa-çao

Exemplo 3

Entrada

i2n3c4o8n2s7t6i9t8u7c2i4o5n6a4l

Saída

inconsti-tucional
incons-titucional
inconstitu-cional
inconstitucio-nal
in-constitucional