Retos - 026: Estrofas

Nivel de dificultad aproximado (1 a 5): 3  

Historial ayer borrado,
anteayer hubo pecado.

El texto anterior es un pareado: una estrofa con dos versos que riman entre sí con rima consonante. ¿Sabrías hacer un programa que identifique distintos tipos de estrofa?

En concreto, nos bastará con identificar las rimas (no tendremos en cuenta el número de sílabas de cada verso), existiendo dos rimas distintas:

  • Rima consonante: se dice que entre dos versos hay rima consonante cuando todos los sonidos, tanto vocales como consonantes, riman. Para las comparaciones se tienen en cuenta todos los sonidos a partir de la última vocal acentuada.
  • Rima asonante: similar a la anterior pero únicamente riman las vocales.

Por ejemplo, el siguiente cuarteto de Diego de Silva y Mendoza:

Una, dos, tres estrellas, veinte, ciento,(A)
mil, un millón, millares de millares,(B)
¡válgame Dios, que tienen mis pesares(B)
su retrato en el alto firmamento!(A)

tiene esquema ABBA consonante, pues coinciden las vocales y consontantes del primer y último verso, así como las del segundo y tercero.

Nos piden ser capaces de identificar los siguientes tipos de estrofa:

  • De dos versos:
    • Pareado: rima consonante AA.
  • De tres versos:
    • Terceto: rima consonante en el primer y último verso (A-A). Ten en cuenta que AAA no se considerará terceto.
  • De cuatro versos:
    • Cuarteto: rima consonante ABBA.
    • Cuarteta: rima consonante ABAB.
    • Seguidilla: rima asonante en los pares (-a-a). Ten en cuenta que otras combinaciones con más rimas o con rima consonante en lugar de asonante (por ejemplo -aaa o -A-A) no se consideran seguidillas.
    • Cuaderna via: rima consonante igual en todos los versos (AAAA).

Entrada

La entrada estará formada por un número indeterminado de casos de prueba. Cada caso de prueba comienza con una línea que contiene un único entero con el número de versos del siguiente poema. A continuación aparecen tantas líneas como versos contiene la estrofa a analizar. Podemos asumir que la última palabra de cada verso es llana (la vocal acentuada está en la penúltima sílaba), y que ninguno tendrá más de 70 letras. La entrada no contendrá tildes para facilitar la programación, aunque esto signifique cometer errores ortográficos. Tampoco tendremos en cuenta que distintos elementos gráficos pueden tener el mismo sonido. Es decir, un verso terminado en -aba, no rimará de forma consonante con un verso terminado en -ava.

La entrada termina cuando el siguiente caso de prueba contiene 0 versos. Para ese caso de prueba no se generará ninguna salida.

Salida

Para cada caso de prueba el programa indicará el nombre de la estrofa, utilizando mayúsculas (PAREADO, TERCETO, CUARTETO, CUARTETA, SEGUIDILLA, CUADERNA VIA) o la palabra DESCONOCIDO si no conoce la estrofa dada.

Notas

El enunciado ha hecho simplificaciones en las definiciones de las estrofas encaminadas a hacer el ejercicio más sencillo; ejemplos de esto son no considerar el número de sílabas, manejar sólo palabras llanas, tener faltas de ortografía, etc. El resultado ha sido unas definiciones que poco tienen que ver con las aceptadas en la literatura. Por favor, no utilices el programa final delante de un experto en poesía.

(Asegúrate de que has leído las preguntas frecuentes antes de plantear tu solución)

Entrada de ejemplo

2
Historial ayer borrado
anteayer hubo pecado
2
Esto no pega
ni con cola.
4
Era un simple clerigo, pobre de clerecia,
dicie cutiano missa de la sancta Maria;
non sabie decir otra, diciela cada dia,
mas la sabie por uso qe por sabiduria.
3
Un manotazo duro, un golpe helado,
un hachazo invisible y homicida,
un empujon brutal te ha derribado.
0

Salida de ejemplo

PAREADO
DESCONOCIDO
CUADERNA VIA
TERCETO

Aportar una solución

Tu nombre (si quieres que aparezca):
Tu web/blog (si quieres que incluyamos un enlace a ella):
Tu e-mail (no se mostrará; si quieres que te avisemos cuando esté publicado):
¿Eres humano? ¿Cuánto es 2 más 3?
Lenguaje
Fuente: