#arc0272. [arc027_2]大事な数なのでZ回書きまLた。
[arc027_2]大事な数なのでZ回書きまLた。
问题文
我被告知记住一个十进制的正整数。这个数字有 N 位,且第一位不是 0。
由于这个数字很重要,所以我在记事本上写了两次。
顺便说一下,我写字很差。
当我回头读记事本时,我忘记了其中一些数字的原始值。
无法确定原始数字的字符最多为26个,以下用大写英文字母 A
到 Z
表示这些字符。这些字符可以是从 0 到 9 的任何一位数字。
记事本中写的字符可能会重复。如果同一个字母出现多次,在这些字母上的原始值都相同。虽然第一次写的字符和第二次写的字符可能会有相同的字母,但即使是这种情况,这些字母的原始值也相同。同时,不同类型的字母可能具有相同的原始数字。
例如,如果记事本上第一次写的字符串是 1XYX
,则可以考虑以下数字作为要记住的数字:、、 等等。然而,例如 不能被考虑为要记住的数字,因为对应于 X
的原始数字有多个值,即 1 和 2。
给定记事本上写的两个字符串,请编写一个程序来确定作为要记住的数字一共有多少种可能性。
输入
输入以以下格式从标准输入中给出。
N
s1
s2
- 第一行包含一个正整数 N,表示要记住的整数的位数 。
- 第二行包含第一次在记事本上写的字符串 s1。s1 的长度恰好为 N,并且只包含大写字母和数字。
- 第三行包含第二次在记事本上写的字符串 s2。s2 的长度恰好为 N,并且只包含大写字母和数字。
- 对于所有评测用例,至少存在一个整数可以作为要记住的整数。换句话说,无论如何为字母分配数字,s1 和 s2 的最高位都不能为 0,且 s1 和 s2 不表示不同的数字。
部分分
本问题设有部分分。
- 对于满足 的数据集1正确的回答,将得到30分。
- 对于没有额外限制的数据集2正确的回答,将额外获得70分。
输出
请在一行中输出作为要记住的整数的可能数量。输出末尾需包含换行符。
需要注意的是,在此问题中输出的结果可能超出 32 位整数的范围。
示例1
输入示例
4
1XYX
1Z48
输出示例
1
只有一个可能的数字可以作为要记住的整数:。
示例2
输入示例
3
XXX
YYY
输出示例
9
请注意不能使用前导零。
示例3
输入示例
6
PRBLMB
ARC027
输出示例
90