Module: Itérer sur tous les sous-modèles d'un masque donné


Problem

7 /7


Bessie s'est vengée

Problem

Le fermier John et Besi la vache adorent échanger des puzzles mathématiques pendant leur temps libre. Le dernier puzzle que FD a donné à Besie était assez difficile et Besie n'a pas pu le résoudre. Maintenant, elle veut donner à FD un puzzle très difficile.

Besi donne une expression FD  (B+E+S+S+I+E)(G+O+E+S)(M+O+O), contenant sept variables B,E , S,I,G,O,M ("O" est une variable, pas 0). Pour chaque variable, il donne au FD une liste de jusqu'à 20 nombres entiers que cette variable peut accepter. Besi demande au FD de compter le nombre de façons différentes d'attribuer des valeurs aux variables afin que l'expression calculée soit un nombre pair.

Entrée

La première ligne d'entrée contient un entier N. Chacune des N lignes suivantes contient une variable et une valeur possible pour cette variable. Chaque variable apparaîtra dans cette liste au moins une fois et au plus 20 fois. Pour une même variable, toutes les valeurs données sont différentes. Toutes les valeurs vont de −300 à 300.

Sortie

Affiche un seul entier qui spécifie le nombre de façons dont le FD peut attribuer des valeurs aux variables afin que l'expression donne un résultat pair.

 

dix
B2
E 5
S7
je 10
O 16
M19
B3
G1
je 9
M2
Entrée Sortie
6
 

Il existe 6 options possibles pour attribuer des valeurs aux 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

Notez que (2,5,7,10,1,16,19) et (3,5,7,9,1,16,19) sont traités comme des devoirs différents même s'ils donnent le même résultat.< /p>