Module: Iterar sobre todos los subpatrones de una máscara dada


Problem

7 /7


Bessie se desquitó

Problem

Al granjero John y a la vaca Besi les encanta intercambiar acertijos matemáticos en su tiempo libre. El último acertijo que FD le dio a Besie fue bastante difícil y Besie no pudo resolverlo. Ahora quiere darle a FD un rompecabezas muy difícil.

Besi da una expresión FD  (B+E+S+S+I+E)(G+O+E+S)(M+O+O), que contiene siete variables B,E , S,I,G,O,M ("O" es una variable, no 0). Para cada variable, le da al FD una lista de hasta 20 enteros que esta variable puede aceptar. Besi le pide al FD que cuente el número de formas diferentes de asignar valores a las variables para que la expresión calculada sea un número par.

Entrada

La primera línea de entrada contiene un número entero N. Cada una de las N líneas siguientes contiene una variable y un posible valor para esa variable. Cada variable aparecerá en esta lista al menos una vez y como máximo 20 veces. Para la misma variable, todos los valores dados son diferentes. Todos los valores van desde +300 a 300.

Salida

Imprima un solo entero que especifique la cantidad de formas en que el FD puede asignar valores a las variables para que la expresión dé un resultado uniforme.

 

Entrada Salida
10
B2
mi 5
S7
I 10
O 16
M19
B3
G1
yo 9
M2
6  

Hay 6 opciones posibles para asignar valores a las variables:

 

(B,E,S,I,G,O,M) = (2, 5, 7, 10, 1, 16, 19) -> 53.244 = (2, 5, 7, 10, 1, 16, 2) -> 35.496 = (2, 5, 7, 9, 1, 16, 2) -> 34.510 = (3, 5, 7, 10, 1, 16, 2) -> 36.482 = (3, 5, 7, 9, 1, 16, 19) -> 53.244 = (3, 5, 7, 9, 1, 16, 2) -> 35.496

Tenga en cuenta que (2,5,7,10,1,16,19) y (3,5,7,9,1,16,19) se tratan como asignaciones diferentes aunque den el mismo resultado.< /p>