Indexando Palabras

Time Limit:
1 Sec
Memory Limit:
128Mb
Enviados:
255
Resuelto:
134

Descripción

Codificar palabras es a menudo usado en el área de la criptografía o para almacenar información. Aqui, desarollaremos un simple esquema de codificación que codifique un tipo particular de palabras con cinco letras o menos (en minúsculas) a números enteros.

Consideremos el alfabeto inglés $(a, b, c, d, ..., z)$. Usando este alfabeto, un conjunto de palabras válidas en estricto orden ascendente serán formadas. En este conjunto de palabras válidas, las letras de una palabra válida estan en estrictas orden ascendete. Por ejemplo:

abc aep gwz xyz

son palabras válidas de tres letras, mientras que

aab aba zyx

no lo son.

Para cada palabra válida debemos asociar un número entero el cual nos dara la posición de la palabra en la lista de palabras. Esto es:

a -> 1

b -> 2

...

z -> 26

ab -> 27

ac -> 28

...

az -> 51

bc -> 53

...

vwxyz -> 83681

Tu programa debe leer una serie de lineas de entrada. Cada linea constara de una sola palabra, esa palabra tendra una longitud de entre uno y cinco. Para cada palabra leída, si la palabra es inválida deberas imprimir el numero '0' (cero). Si la palabra es válida deberas imprimir la posición de la palabra en la lista de arriba.

Entrada

Tu programa debe leer una serie de lineas de entrada. Cada linea constara de una sola palabra, esa palabra tendra una longitud de entre uno y cinco caracteres. Solo letras minúsculas del alfabeto inglés seran usadas $(a, b, c, ..., z)$

La entrada terminara por EOF (fin de archivo).

Salida

La salida es un número entero $idx (1 \leq idx \leq 83681)$ que representa la posicion en la lista si la palabra es válida o $0$ si la palabra es inválida. 

Ejemplo Entrada

Copy icon
z
a
gato
vwxyz

Ejemplo Salida

Copy icon
26
1
0
83681

Ayuda

Estructuras de Datos