Qui és qui?


Enviar solució

Punts: 2
Temps Límit: 5.0s
Límit de memòria: 64M

Autor/a:
tipus del problema
Pensar!
Categoria
Lliga de Programació FP
Llenguatges permesos
Bash, C, C#, C++, Haskell, Java, Kotlin, PHP, Python

quiesqui

Qui és qui? és un joc tradicional de taula per a 2 jugadors en el que un munt de personatges es troben identificats de forma única per un conjunt d'atributs (ex: porta ulleres, té bigoti, porta gorra, és rossa ... ).

Cadascun dels jugadors ha de triar un personatge i es tracta d'endevinar el personatge abans que el contrari fent preguntes sobre algun atribut i descartant tots aquells personatges que no compleixin amb la resposta sobre aquell atribut. És a dir, si un jugador li pregunta a l'altre si el personatge triat "porta ulleres?" i la resposta és SI caldrà que descartem tots els personatges que no porten ulleres.

En la nostra versió tenim un nombre variable de P de personatges cadascun dels quals està definit de forma única per un conjunt d'A atributs. El valor de cada atribut només pot tenir dos valors: SÍ o NO.

Després de Q preguntes podem determinar quin és el personatge triat per l'altre jugador?

Entrada

L'entrada consta d'un únic cas amb diverses línies.

La primera línia conté 3 números P, A i Q que indiquen el nombre de personatges, atributs i preguntes.

A continuació tenim P línies de llargada A on tenim la resposta per cadascun dels atributs. S indica SÍ i N indica NO. També pots trobar-te la versió del joc en anglès amb valors Y i N.

Finalment, tenim Q línies amb dos valors. El primer és un valor numèric que indica sobre quin atribut hem fet la pregunta. El segon és un caràcter (S/N o bé Y/N) indicant la resposta que hem rebut per aquell caràcter.

Sortida

A la sortida, cal indicar "SI" i el número de personatge si és possible determinar sense cap mena de dubte quin és el personatge que ha triat l'altre jugador, o bé caldrà indicar "NO" si no és possible fer-ho i llavors haurem d'indicar quants personatges encara podrien ser-ho.

Exemple d'Entrada 1

5 4 3
YYYY
NNNN
NYNY
YNNN
NNYY
1 Y
2 N
3 N

Exemple de Sortida 1

SI 4

Exemple d'Entrada 2

5 4 2
SSSS
NNNN
NSNS
SNNN
NNSS
4 S
3 S

Exemple de Sortida 2

NO 2

Comentaris

En aquests moments no hi ha comentaris.