给出一个加法算式,例如:###+###=###,算式中每个#代表一位整数。上面的样例表示,一个三位整数加上另一个三位整数,结果是另一个三位整数。
要求加法运算的两个整数,以及结果的那个整数,都不能以数字 0 开头,且三个整数的各个位中,不能有重复的数字。
请编程计算出,按照上述要求填充给定格式的加法算式,有多少种不同的填充方法?
输入一个仅由 #+= 三种运算构成的加法算式。测试数据保证所有的加法算式,格式上一定是两个整数相加等于另一个整数。
输出加法算式有多少种不同的填充方法,进行加法运算的两个整数交换位置后,认为是相同的算式。
#+#=##
15
#+#=#
16
##+##=##
238
符合样例 1 的加法算式,有如下 15 种。
2+8=10
3+7=10
3+9=12
4+6=10
4+8=12
4+9=13
5+7=12
5+8=13
5+9=14
6+7=13
6+8=14
6+9=15
7+8=15
7+9=16
8+9=17
对于 30\% 的数据,满足两个求和的整数,以及求出的和,位数相同。
对于 100\% 的数据,两个求和的整数保证每个整数最多只有 3 位,求出的和保证最多只有 4 位。
东方博宜OJ