시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 168 75 53 44.915%

문제

복면산이란 수학 퍼즐의 일종으로, 어떤 계산식의 각 숫자들을 특정 문자로 바꾸면 각 문자가 어떤 숫자인지 맞추는 퍼즐이다.

대표적으로 SEND+MORE=MONEY가 있다.

  SEND
+ MORE
------
 MONEY

S=9, E=5, N=6, D=7, M=1, O=0, R=8, Y=2로 바꾸면 식이 성립한다.

  9567
+ 1085
------
 10652

복면산 문제가 주어질 때, 답이 존재하는지 여부를 출력하시오.

단, 같은 문자는 같은 숫자에 대응되어야 하며, 서로 다른 문자는 서로 다른 숫자를 나타낸다. 또한, 수는 0으로 시작할 수 있다.

입력

세 단어가 공백을 두고 주어진다. 첫 번째 단어와 두 번째 단어를 더한 결과가 세 번째 단어임을 의미한다.

단어는 공백 없이 알파벳 대문자로만 이루어져 있으며 각 단어의 길이는 18자리를 넘지 않는다.

출력

계산식에 해답이 존재한다면 YES를, 그렇지 않다면 NO를 한 줄에 출력한다.

예제 입력 1

SUN FUN SWIM

예제 출력 1

YES

예제 입력 2

P P AP

예제 출력 2

NO

힌트

예제 입력 1은 067+867=0934와 167+867=1034를 포함하여 49개의 해답이 존재한다.

출처

University > 전북대학교 > 2018 전북대학교 프로그래밍 경진대회 C번