Pau Gargallo y sus amigos están reunidos en un albergue, decidiendo en qué orden tomarán la salida para la ya clásica carrera invernal sobre la nieve. Fuera hace un frío que pela y nadie quiere salir el primero.
–¡Decidámoslo a piedra, papel o tijeras! –propone alguien.
La sugerencia es acogida con escepticismo: ¡la decisión duraría una eternidad, porque hay más de mil corredores! Pau interviene para proponer una idea más sensata.
–Casualmente, aquí tengo unos cuantos centenares de barajas de póker. Nos lo jugaremos a una sola mano de póker: repartiré cinco cartas a cada uno de vosotros, y la mano más baja saldrá primero, a continuación la siguiente, etc.
–¿Y en caso de empate? –propone otra persona.
–Si se diera el improbable caso –responde Pau– aquellos que empataran saldrían según el orden alfabético de sus nombres. O sea, quien apareciera antes en el diccionario, saldría antes a correr.
Conociendo los nombres y las cartas de cada uno de los amigos de Pau, ¿serías capaz de decirnos en qué orden saldrán?
A continuación explicamos las reglas del póker, tal y como se entiende en este problema.
Explicación de las reglas del póker
Una mano de póker está formada por 5 cartas. Usamos baraja inglesa (las cartas son, de menor a mayor valor, los números del 2 al 10, las figuras J, Q, K, y el as A). No hay comodines. Como hay varias barajas, una mano puede tener varias copias de la misma carta.
Decimos que dos cartas del mismo número forman una pareja, tres un trío, cuatro un póker y cinco un repóker. Una escalera son cinco cartas consecutivas siguiendo el orden A−K−Q−J−10−9−8−7−6−5−4−3−2−A (el as ’A’ puede ser tanto la carta más alta como la más baja de la escalera: A−K−Q−J−10 es la escalera más alta posible, y 5−4−3−2−A la más baja).
Las manos se ordenan del modo siguiente, de más alta a más baja:
Si una mano cae dentro de varias categorías (por ejemplo, un trío y un color a la vez, situación que puede pasar porque usamos varias barajas) se considera que la categoría de la mano es la más alta (en el ejemplo, la mano sería un color).
Para desempatar dos manos del mismo tipo se sigue el criterio siguiente:
Si este criterio no desempata las manos, entonces se comparan los valores de todas las cartas. Gana quien tenga la carta más alta. En caso de empate, se compara la siguiente, etc. Por lo tanto, el único modo de que dos manos empaten es que tengan exactamente cartas con los mismos números.
Entrada
En una línea el número n de amigos de Pau (os garantizamos que Pau tiene al menos 2 amigos pero no más de 2500). A continuación n líneas, cada una de las cuales contiene una palabra (el nombre del amigo, formado por letras mayúsculas y minúsculas, sin espacios) y las 5 cartas que recibe, separadas también por espacios. Una carta es un par N P, donde N es el número de la carta (2, 3, …, 9, 10, J, Q, K, A) y P es el palo de la carta (S, H, D o C).
Todos los amigos tienen nombres distintos.
Salida
Escribid, en n líneas, los nombres de los amigos de Pau, en el orden en el que tomarán la salida de la carrera.
Pista Este problema es complicado, ya que es demasiado fácil cometer algún pequeño despiste al realizar el programa. Estáis avisados.
Input
10 icaocn 7 C 4 H A S 8 C J S actleqcmh 7 H A S 7 S 10 S 7 H chqcehsw A C 6 D 5 C 5 D 4 S lpnjv 8 H 9 S 2 C 2 C A H cgtvacjmn 5 H 4 S J S 7 C K C pwcsu 5 H 8 H 7 C 9 D 8 S gornv J D Q C A H Q C A C tuvntkr 9 S 5 S 10 S 5 S J D ndrxtjgv J C 9 S 10 S 8 S K H bwhpkjzyf Q S 8 S K S K S K D
Output
cgtvacjmn ndrxtjgv icaocn lpnjv tuvntkr chqcehsw pwcsu gornv actleqcmh bwhpkjzyf