#L3480. 「ROIR 2021 Day 2」A+B

「ROIR 2021 Day 2」A+B

题目描述

译自 ROIR 2021 Day2 T4 A+B

有三个长为 nn 的可能含前导零的整数 a,b,ca, b, c,按如下方式排成三行 nn 列:

aa
bb
cc

问,有多少种不同的列的排列方式,使得被横着念出来的三个整数 x,y,zx, y, zx+y=zx + y = z 成立且三个整数均没有前导零。排列方式的个数可能很多,输出其 mod109+7\bmod 10^9 + 7 即可。


输入格式

第一行为一个长 nn 的整数 aa

第二行为一个长 nn 的整数 bb

第三行为一个长 nn 的整数 cc


输出格式

仅一行一个整数,表示不同的排列方式的个数模 109+710^9+7


样例

样例 1

输入

123
123
246

输出

6

所有排列方式均可。

样例 2

输入

01
02
03

输出

1

我们只计算 10+20=3010+20=30,而不计算 01+02=0301+02=03,因为 0303 含前导零。

样例 3

输入

01211
12099
23300

输出

4

显然有 10121+21909=3203010121 + 21909 = 3203012101+20919=3302012101 + 20919 = 33020 两种合法等式,但由于有两个相同的列,所以它们都有两种方式得到答案,总方案数为 2×2=42 \times 2 = 4

样例 4

输入

121
214
999

输出

0

数据范围与提示

对于所有子任务,有 2n2×1052 \le n \le 2 \times 10^5

子任务编号 特殊限制 分值
1 n6n \le 6 7
2 n18n \le 18 14
3 n200n \le 200,读入的数字中不含 00 15
4 n200n \le 200 5
5 n750n \le 750,读入的数字中不含 00 17
6 n750n \le 750 5
7 读入的数字中不含 00 20
8 无特殊限制 17