贝茜正急着输入一个给定的****,为了节省时间,她决定用一只蹄子同时按下多个按键。具体来说,贝茜的蹄子可以按下单个数字、两个相邻(共享一条边)的数字(总共有 12 种可能的组合),或者构成一个正方形的四个数字(即 1245、2356、4578 或 5689)。
例如,如果贝茜试图输入的****是 123659874,她可能会尝试通过以下操作来节省时间:
同时按下 1 和 2。
按下 3。
同时按下 6、5、9 和 8。
同时按下 7 和 4。
不幸的是,贝茜严重高估了自己执行此任务的能力——如果贝茜的蹄子同时按下多个按键,那么这些数字将以任意顺序被输入。因此,如果贝茜尝试上述按键序列,她最终可能输入的是 123596847 或 213659874(或者是许多其他可能性中的一种)。
给定贝茜实际输入的一串数字序列,请计算她原本可能试图输入的****的数量,结果对
1
0
9
+
7
10
9
+7 取模。
注意:本题的时间限制为 4 秒,是默认时间的两倍。
输入格式
第一行包含
T
T (
1
≤
T
≤
10
1≤T≤10),表示需要解决的独立测试用例的数量。
接下来的
T
T 行,每行包含一个非空字符串,由数字 1 到 9 组成。
保证所有字符串的总长度不超过
1
0
5
10
5
。
输出格式
对于每个测试用例,输出贝茜可能试图输入的****的数量,结果对
1
0
9
+
7
10
9
+7 取模。
输入输出样例
输入 #1
text
5
1478
4455
5968
31313211
123659874
输出 #1
text
5
2
24
3
255
说明/提示
对于第一个案例,贝茜可能试图输入以下五个****中的任意一个:
1478
1487
4178
4187
1748
例如,如果贝茜试图输入 4187,她可能尝试同时按下 1 和 4,然后尝试同时按下 7 和 8。
对于第三个案例,由于这些数字构成一个正方形(5, 9, 6, 8 对应键盘上的 5,6,8,9 位置,构成正方形 5689 的变体排列,注意题目中正方形定义为 5689,而输入是 5968,这四个数字恰好是正方形 5689 的四个数字),贝茜可能试图输入输入序列的任意排列。