#aBC198D. [ABC198D] Send More Money

[ABC198D] Send More Money

AT_abc198_d [ABC198D] Send More Money

题目描述

给你三个由小写字母组成的字符串 S1,S2,S3 S_1, S_2, S_3 。请解出这道覆面算:S1+S2=S3 S_1 + S_2 = S_3

具体来说,要求你确定是否存在一组符合以下条件的正整数 N1,N2,N3 N_1, N_2, N_3 ,如果存在,请输出其中一个组合:

  1. N1,N2,N3 N_1, N_2, N_3 分别表示的十进制数字串 N1,N2,N3 N'_1, N'_2, N'_3 的长度与对应的字符串 S1,S2,S3 S_1, S_2, S_3 的长度相同,并且不含前导零。
  2. 满足 N1+N2=N3 N_1 + N_2 = N_3
  3. Si S_i 的第 x x 个字符和 Sj S_j 的第 y y 个字符相同,当且仅当 Ni N'_i 的第 x x 个数字和 Nj N'_j 的第 y y 个数字相同。

输入格式

输入为一行,其中包含三个字符串 S1,S2,S3 S_1, S_2, S_3

输出格式

如果存在符合条件的正整数组合 N1,N2,N3 N_1, N_2, N_3 ,则每行输出其中一个可能的组合。如果没有满足条件的组合,则输出 UNSOLVABLE

输入输出样例 #1

输入 #1

a
b
c

输出 #1

1
2
3

输入输出样例 #2

输入 #2

x
x
y

输出 #2

1
1
2

输入输出样例 #3

输入 #3

p
q
p

输出 #3

UNSOLVABLE

输入输出样例 #4

输入 #4

abcd
efgh
ijkl

输出 #4

UNSOLVABLE

输入输出样例 #5

输入 #5

send
more
money

输出 #5

9567
1085
10652

说明/提示

  • S1,S2,S3 S_1, S_2, S_3 是长度在 1 1 10 10 之间的小写字母字符串。

示例解释

在示例 1 中,输出 (N1,N2,N3)=(4,5,9) (N_1, N_2, N_3) = (4, 5, 9) 是正确的组合,而 (1,1,2) (1, 1, 2) 因不满足条件 3 (例如,字符 ab 都对应 1 1 )因此是错误的。

在示例 2 中,输出 (N1,N2,N3)=(3,3,6) (N_1, N_2, N_3) = (3, 3, 6) 是一个正确的答案,而 (1,2,3) (1, 2, 3) 因为未满足条件 3(例如,数字 1 1 2 2 在对应字符 x 时不一致)是错误的。

本翻译大部分由 AI 自动生成