题目描述
农夫约翰和奶牛贝西喜欢在空闲时间交换数学谜题。FJ给贝西的最后一个谜题相当难,她没能解决。现在她想通过给FJ一个挑战性的谜题来报复他。
贝西给了FJ表达式(B+E+S+S+I+E)(G+O+E+S)(M+O+O),包含七个变量B、E、S、I、G、O、M("O"是一个变量,而不是零)。对于每个变量,她为FJ提供了一个列表,其中包含该变量可能接受的多达500个整数值。她要求FJ计算他可以为变量赋值的不同方式的数量,以便整个表达式的计算结果为7的倍数。
请注意,这个问题的答案可能太大,无法放入32位整数中,因此您可能希望使用64位整数(例如,C或C++中的"long−long")。
输入格式
输入的第一行包含一个整数N。接下来的N行分别包含一个变量和该变量的一个可能值。每个变量将在此列表中至少出现一次,最多500次。对于同一变量,不会多次列出可能的值。所有可能的值都在范围内?105至105。
输出格式
打印一个整数,给出FJ为变量赋值的方式数,使上述表达式的计算结果为7的倍数。
样例
输入样例
10
B 2
E 5
S 7
I 10
O 16
M 19
B 3
G 1
I 9
M 2
输出样例
2
提示
这两种可能的任务是
(B,E,S,I,G,O,M)=(2,5,7,9,1,16,19)−>51765
=(2,5,7,9,1,16,2)−>34,510