시간 제한메모리 제한제출정답맞힌 사람정답 비율
40 초 128 MB157453248.485%

문제

단어 덧셈이란 905 + 125 = 1030과 같은 덧셈의 각 숫자를 알파벳으로 바꾼 것이다.

9를 A로, 0을 C로, 5를 M으로, 1을 I로, 2를 B로, 0을 C로, 3을 P로 바꾸면 다음과 같이 된다.

ACM + IBM = ICPC

이렇게 905 + 125 = 1030의 경우에는 바꾸는 방법이 총 4가지가 있다.

방법 A B C I M P
방법 1 9 2 0 1 5 3
방법 2 9 3 0 1 5 4
방법 2 9 6 0 1 5 7
방법 2 9 7 0 1 5 8

 

단어 덧셈이 주어졌을 때, 이 단어 덧셈을 푸는 방법의 수를 구하는 프로그램을 작성하시오. 단, 다음 조건을 만족해야 한다.

1. 덧셈의 각 항은 숫자 '0'-'9'로 이루어져 있다. 모든 숫자는 알파벳 'A'-Z'로 바뀌어져 있다.

2. 한 알파벳은 하나의 숫자만을 나타낼 수 있다. 또, 어떤 숫자에 해당하는 알파벳은 반드시 하나 이어야 한다.

3. 0을 제외한 숫자는 0으로 시작할 수 없다. 즉, 00이나 0123과 같은 경우는 허용하지 않는다.

 

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다. 테스트 케이스의 마지막 줄에는 0이 주어진다.

각 테스트 케이스는 첫째 줄에 단어의 개수 N이 주어지고, 그 다음 줄에는 단어 N개가 주어진다. 단어는 알파벳 'A'-'Z'로만 이루어져 있다.

각 단어는 다음과 같은 방정식을 나타낸다.

단어1+단어2+...+단어N-1 = 단어N

N은 2보다 크고, 13보다 작다. 단어의 길이는 0보다 크고, 9보다 작다. 단어에 등장하는 서로 다른 알파벳의 개수는 0보다 크고, 11보다 작다.

출력

각 테스트 케이스에 대해서, 단어 덧셈을 풀 수 있는 방법의 수를 출력한다.

예제 입력 1

3
ACM
IBM
ICPC
3
GAME
BEST
GAMER
4
A
B
C
AB
3
A
B
CD
3
ONE
TWO
THREE
3
TWO
THREE
FIVE
3
MOV
POP
DIV
9
A
B
C
D
E
F
G
H
IJ
0

예제 출력 1

4
1
8
30
0
0
0
40320
W3sicHJvYmxlbV9pZCI6IjQ5NjQiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWIyZThcdWM1YjQgXHViMzY3XHVjMTQ4IiwiZGVzY3JpcHRpb24iOiI8cD5cdWIyZThcdWM1YjQgXHViMzY3XHVjMTQ4XHVjNzc0XHViNzgwIDkwNSArIDEyNSA9IDEwMzBcdWFjZmMgXHVhYzE5XHVjNzQwIFx1YjM2N1x1YzE0OFx1Yzc1OCBcdWFjMDEgXHVjMjJiXHVjNzkwXHViOTdjIFx1YzU0Y1x1ZDMwY1x1YmNiM1x1YzczY1x1Yjg1YyBcdWJjMTRcdWFmYmMgXHVhYzgzXHVjNzc0XHViMmU0LjxcL3A+XHJcblxyXG48cD45XHViOTdjIEFcdWI4NWMsIDBcdWM3NDQgQ1x1Yjg1YywgNVx1Yjk3YyBNXHVjNzNjXHViODVjLCAxXHVjNzQ0IElcdWI4NWMsIDJcdWI5N2MgQlx1Yjg1YywgMFx1Yzc0NCBDXHViODVjLCAzXHVjNzQ0IFBcdWI4NWMgXHViYzE0XHVhZmI4XHViYTc0IFx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWM3NzQgXHViNDFjXHViMmU0LjxcL3A+XHJcblxyXG48cD5BQ00gKyBJQk0gPSBJQ1BDPFwvcD5cclxuXHJcbjxwPlx1Yzc3NFx1YjgwN1x1YWM4YyA5MDUgKyAxMjUgPSAxMDMwXHVjNzU4IFx1YWNiZFx1YzZiMFx1YzVkMFx1YjI5NCBcdWJjMTRcdWFmYjhcdWIyOTQgXHViYzI5XHViYzk1XHVjNzc0IFx1Y2QxZCA0XHVhYzAwXHVjOWMwXHVhYzAwIFx1Yzc4OFx1YjJlNC48XC9wPlxyXG5cclxuPHRhYmxlIGNsYXNzPVwidGFibGUgdGFibGUtYm9yZGVyZWRcIiBzdHlsZT1cIndpZHRoOjI4JVwiPlxyXG5cdDx0aGVhZD5cclxuXHRcdDx0cj5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+XHViYzI5XHViYzk1PFwvdGg+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjMlXCI+QTxcL3RoPlxyXG5cdFx0XHQ8dGggc3R5bGU9XCJ3aWR0aDozJVwiPkI8XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MyVcIj5DPFwvdGg+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjMlXCI+STxcL3RoPlxyXG5cdFx0XHQ8dGggc3R5bGU9XCJ3aWR0aDozJVwiPk08XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MyVcIj5QPFwvdGg+XHJcblx0XHQ8XC90cj5cclxuXHQ8XC90aGVhZD5cclxuXHQ8dGJvZHk+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0ZD5cdWJjMjlcdWJjOTUgMTxcL3RkPlxyXG5cdFx0XHQ8dGQ+OTxcL3RkPlxyXG5cdFx0XHQ8dGQ+MjxcL3RkPlxyXG5cdFx0XHQ8dGQ+MDxcL3RkPlxyXG5cdFx0XHQ8dGQ+MTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NTxcL3RkPlxyXG5cdFx0XHQ8dGQ+MzxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0ZD5cdWJjMjlcdWJjOTUgMjxcL3RkPlxyXG5cdFx0XHQ8dGQ+OTxcL3RkPlxyXG5cdFx0XHQ8dGQ+MzxcL3RkPlxyXG5cdFx0XHQ8dGQ+MDxcL3RkPlxyXG5cdFx0XHQ8dGQ+MTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NDxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0ZD5cdWJjMjlcdWJjOTUgMjxcL3RkPlxyXG5cdFx0XHQ8dGQ+OTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NjxcL3RkPlxyXG5cdFx0XHQ8dGQ+MDxcL3RkPlxyXG5cdFx0XHQ8dGQ+MTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NzxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0ZD5cdWJjMjlcdWJjOTUgMjxcL3RkPlxyXG5cdFx0XHQ8dGQ+OTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NzxcL3RkPlxyXG5cdFx0XHQ8dGQ+MDxcL3RkPlxyXG5cdFx0XHQ8dGQ+MTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NTxcL3RkPlxyXG5cdFx0XHQ8dGQ+ODxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0PFwvdGJvZHk+XHJcbjxcL3RhYmxlPlxyXG5cclxuPHA+Jm5ic3A7PFwvcD5cclxuXHJcbjxwPlx1YjJlOFx1YzViNCBcdWIzNjdcdWMxNDhcdWM3NzQgXHVjOGZjXHVjNWI0XHVjODRjXHVjNzQ0IFx1YjU0YywgXHVjNzc0IFx1YjJlOFx1YzViNCBcdWIzNjdcdWMxNDhcdWM3NDQgXHVkNDc4XHViMjk0IFx1YmMyOVx1YmM5NVx1Yzc1OCBcdWMyMThcdWI5N2MgXHVhZDZjXHVkNTU4XHViMjk0IFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc0NCBcdWM3OTFcdWMxMzFcdWQ1NThcdWMyZGNcdWM2MjQuIFx1YjJlOCwgXHViMmU0XHVjNzRjIFx1Yzg3MFx1YWM3NFx1Yzc0NCBcdWI5Y2NcdWM4NzFcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0LjxcL3A+XHJcblxyXG48cD4xLiBcdWIzNjdcdWMxNDhcdWM3NTggXHVhYzAxIFx1ZDU2ZFx1Yzc0MCBcdWMyMmJcdWM3OTAgJiMzOTswJiMzOTstJiMzOTs5JiMzOTtcdWI4NWMgXHVjNzc0XHViOGU4XHVjNWI0XHVjODM4IFx1Yzc4OFx1YjJlNC4gXHViYWE4XHViNGUwIFx1YzIyYlx1Yzc5MFx1YjI5NCBcdWM1NGNcdWQzMGNcdWJjYjMgJiMzOTtBJiMzOTstWiYjMzk7XHViODVjIFx1YmMxNFx1YjAwY1x1YzViNFx1YzgzOCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPjIuIFx1ZDU1YyBcdWM1NGNcdWQzMGNcdWJjYjNcdWM3NDAgXHVkNTU4XHViMDk4XHVjNzU4IFx1YzIyYlx1Yzc5MFx1YjljY1x1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYmMgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHViNjEwLCBcdWM1YjRcdWI1YTQgXHVjMjJiXHVjNzkwXHVjNWQwIFx1ZDU3NFx1YjJmOVx1ZDU1OFx1YjI5NCBcdWM1NGNcdWQzMGNcdWJjYjNcdWM3NDAgXHViYzE4XHViNGRjXHVjMmRjIFx1ZDU1OFx1YjA5OCBcdWM3NzRcdWM1YjRcdWM1N2MgXHVkNTVjXHViMmU0LjxcL3A+XHJcblxyXG48cD4zLiAwXHVjNzQ0IFx1YzgxY1x1YzY3OFx1ZDU1YyBcdWMyMmJcdWM3OTBcdWIyOTQgMFx1YzczY1x1Yjg1YyBcdWMyZGNcdWM3OTFcdWQ1NjAgXHVjMjE4IFx1YzVjNlx1YjJlNC4gXHVjOTg5LCAwMFx1Yzc3NFx1YjA5OCAwMTIzXHVhY2ZjIFx1YWMxOVx1Yzc0MCBcdWFjYmRcdWM2YjBcdWIyOTQgXHVkNWM4XHVjNmE5XHVkNTU4XHVjOWMwIFx1YzU0YVx1YjI5NFx1YjJlNC48XC9wPlxyXG5cclxuPHA+Jm5ic3A7PFwvcD5cclxuIiwiaW5wdXQiOiI8cD5cdWM3ODVcdWI4MjVcdWM3NDAgXHVjNWVjXHViN2VjIFx1YWMxY1x1Yzc1OCBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHViODVjIFx1Yzc3NFx1YjhlOFx1YzViNFx1YzgzOCBcdWM3ODhcdWIyZTQuIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWM3NTggXHViOWM4XHVjOWMwXHViOWM5IFx1YzkwNFx1YzVkMFx1YjI5NCAwXHVjNzc0IFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVhYzAxIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWIyOTQgXHVjY2FiXHVjOWY4IFx1YzkwNFx1YzVkMCBcdWIyZThcdWM1YjRcdWM3NTggXHVhYzFjXHVjMjE4IE5cdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWMwXHVhY2UwLCBcdWFkZjggXHViMmU0XHVjNzRjIFx1YzkwNFx1YzVkMFx1YjI5NCBcdWIyZThcdWM1YjQgTlx1YWMxY1x1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuIFx1YjJlOFx1YzViNFx1YjI5NCBcdWM1NGNcdWQzMGNcdWJjYjMgJiMzOTtBJiMzOTstJiMzOTtaJiMzOTtcdWI4NWNcdWI5Y2MgXHVjNzc0XHViOGU4XHVjNWI0XHVjODM4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVhYzAxIFx1YjJlOFx1YzViNFx1YjI5NCBcdWIyZTRcdWM3NGNcdWFjZmMgXHVhYzE5XHVjNzQwIFx1YmMyOVx1YzgxNVx1YzJkZFx1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YjJlOFx1YzViNDxzdWI+MTxcL3N1Yj4rXHViMmU4XHVjNWI0PHN1Yj4yPFwvc3ViPisuLi4rXHViMmU4XHVjNWI0PHN1Yj5OLTE8XC9zdWI+ID0gXHViMmU4XHVjNWI0PHN1Yj5OPFwvc3ViPjxcL3A+XHJcblxyXG48cD5OXHVjNzQwIDJcdWJjZjRcdWIyZTQgXHVkMDZjXHVhY2UwLCAxM1x1YmNmNFx1YjJlNCBcdWM3OTFcdWIyZTQuIFx1YjJlOFx1YzViNFx1Yzc1OCBcdWFlMzhcdWM3NzRcdWIyOTQgMFx1YmNmNFx1YjJlNCBcdWQwNmNcdWFjZTAsIDlcdWJjZjRcdWIyZTQgXHVjNzkxXHViMmU0LiBcdWIyZThcdWM1YjRcdWM1ZDAgXHViNGYxXHVjN2E1XHVkNTU4XHViMjk0IFx1YzExY1x1Yjg1YyBcdWIyZTRcdWI5NzggXHVjNTRjXHVkMzBjXHViY2IzXHVjNzU4IFx1YWMxY1x1YzIxOFx1YjI5NCAwXHViY2Y0XHViMmU0IFx1ZDA2Y1x1YWNlMCwgMTFcdWJjZjRcdWIyZTQgXHVjNzkxXHViMmU0LjxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPlx1YWMwMSBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHVjNWQwIFx1YjMwMFx1ZDU3NFx1YzExYywgXHViMmU4XHVjNWI0IFx1YjM2N1x1YzE0OFx1Yzc0NCBcdWQ0ODAgXHVjMjE4IFx1Yzc4OFx1YjI5NCBcdWJjMjlcdWJjOTVcdWM3NTggXHVjMjE4XHViOTdjIFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIwIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJLb3JlYW4ifSx7InByb2JsZW1faWQiOiI0OTY0IiwicHJvYmxlbV9sYW5nIjoiMSIsInRpdGxlIjoiVmVyYmFsIEFyaXRobWV0aWMiLCJkZXNjcmlwdGlvbiI6IjxwPkxldCYjMzk7cyB0aGluayBhYm91dCB2ZXJiYWwgYXJpdGhtZXRpYy48XC9wPlxyXG5cclxuPHA+VGhlIG1hdGVyaWFsIG9mIHRoaXMgcHV6emxlIGlzIGEgc3VtbWF0aW9uIG9mIG5vbi1uZWdhdGl2ZSBpbnRlZ2VycyByZXByZXNlbnRlZCBpbiBhIGRlY2ltYWwgZm9ybWF0LCBmb3IgZXhhbXBsZSwgYXMgZm9sbG93cy48XC9wPlxyXG5cclxuPHByZT5cclxuICAgIDkwNSArICAxMjUgPSAxMDMwPFwvcHJlPlxyXG5cclxuPHA+SW4gdmVyYmFsIGFyaXRobWV0aWMsIGV2ZXJ5IGRpZ2l0IGFwcGVhcmluZyBpbiB0aGUgZXF1YXRpb24gaXMgbWFza2VkIHdpdGggYW4gYWxwaGFiZXRpYyBjaGFyYWN0ZXIuIEEgcHJvYmxlbSB3aGljaCBoYXMgdGhlIGFib3ZlIGVxdWF0aW9uIGFzIG9uZSBvZiBpdHMgYW5zd2VycywgZm9yIGV4YW1wbGUsIGlzIHRoZSBmb2xsb3dpbmcuPFwvcD5cclxuXHJcbjxwcmU+XHJcbiAgICBBQ00gKyBJQk0gPSBJQ1BDPFwvcHJlPlxyXG5cclxuPHA+U29sdmluZyB0aGlzIHB1enpsZSBtZWFucyBmaW5kaW5nIHBvc3NpYmxlIGRpZ2l0IGFzc2lnbm1lbnRzIHRvIHRoZSBhbHBoYWJldGljIGNoYXJhY3RlcnMgaW4gdGhlIHZlcmJhbCBlcXVhdGlvbi48XC9wPlxyXG5cclxuPHA+VGhlIHJ1bGVzIG9mIHRoaXMgcHV6emxlIGFyZSB0aGUgZm9sbG93aW5nLjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPkVhY2ggaW50ZWdlciBpbiB0aGUgZXF1YXRpb24gaXMgZXhwcmVzc2VkIGluIHRlcm1zIG9mIG9uZSBvciBtb3JlIGRpZ2l0cyAmIzM5OzAmIzM5Oy0mIzM5OzkmIzM5OywgYnV0IGFsbCB0aGUgZGlnaXRzIGFyZSBtYXNrZWQgd2l0aCBzb21lIGFscGhhYmV0aWMgY2hhcmFjdGVycyAmIzM5O0EmIzM5Oy0mIzM5O1omIzM5Oy48XC9saT5cclxuXHQ8bGk+VGhlIHNhbWUgYWxwaGFiZXRpYyBjaGFyYWN0ZXIgYXBwZWFyaW5nIGluIG11bHRpcGxlIHBsYWNlcyBvZiB0aGUgZXF1YXRpb24gbWFza3MgdGhlIHNhbWUgZGlnaXQuIE1vcmVvdmVyLCBhbGwgYXBwZWFyYW5jZXMgb2YgdGhlIHNhbWUgZGlnaXQgYXJlIG1hc2tlZCB3aXRoIGEgc2luZ2xlIGFscGhhYmV0aWMgY2hhcmFjdGVyLiBUaGF0IGlzLCBkaWZmZXJlbnQgYWxwaGFiZXRpYyBjaGFyYWN0ZXJzIG1lYW4gZGlmZmVyZW50IGRpZ2l0cy48XC9saT5cclxuXHQ8bGk+VGhlIG1vc3Qgc2lnbmlmaWNhbnQgZGlnaXQgbXVzdCBub3QgYmUgJiMzOTswJiMzOTssIGV4Y2VwdCB3aGVuIGEgemVybyBpcyBleHByZXNzZWQgYXMgYSBzaW5nbGUgZGlnaXQgJiMzOTswJiMzOTsuIFRoYXQgaXMsIGV4cHJlc3NpbmcgbnVtYmVycyBhcyAmcXVvdDswMCZxdW90OyBvciAmcXVvdDswMTIzJnF1b3Q7IGlzIG5vdCBwZXJtaXR0ZWQuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+VGhlcmUgYXJlIDQgZGlmZmVyZW50IGRpZ2l0IGFzc2lnbm1lbnRzIGZvciB0aGUgdmVyYmFsIGVxdWF0aW9uIGFib3ZlIGFzIHNob3duIGluIHRoZSBmb2xsb3dpbmcgdGFibGUuPFwvcD5cclxuXHJcbjx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLWJvcmRlcmVkXCIgc3R5bGU9XCJ3aWR0aDoyOCVcIj5cclxuXHQ8dGhlYWQ+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjEwJVwiPk1hc2s8XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MyVcIj5BPFwvdGg+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjMlXCI+QjxcL3RoPlxyXG5cdFx0XHQ8dGggc3R5bGU9XCJ3aWR0aDozJVwiPkM8XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MyVcIj5JPFwvdGg+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjMlXCI+TTxcL3RoPlxyXG5cdFx0XHQ8dGggc3R5bGU9XCJ3aWR0aDozJVwiPlA8XC90aD5cclxuXHRcdDxcL3RyPlxyXG5cdDxcL3RoZWFkPlxyXG5cdDx0Ym9keT5cclxuXHRcdDx0cj5cclxuXHRcdFx0PHRkPkNhc2UgMTxcL3RkPlxyXG5cdFx0XHQ8dGQ+OTxcL3RkPlxyXG5cdFx0XHQ8dGQ+MjxcL3RkPlxyXG5cdFx0XHQ8dGQ+MDxcL3RkPlxyXG5cdFx0XHQ8dGQ+MTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NTxcL3RkPlxyXG5cdFx0XHQ8dGQ+MzxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0ZD5DYXNlIDI8XC90ZD5cclxuXHRcdFx0PHRkPjk8XC90ZD5cclxuXHRcdFx0PHRkPjM8XC90ZD5cclxuXHRcdFx0PHRkPjA8XC90ZD5cclxuXHRcdFx0PHRkPjE8XC90ZD5cclxuXHRcdFx0PHRkPjU8XC90ZD5cclxuXHRcdFx0PHRkPjQ8XC90ZD5cclxuXHRcdDxcL3RyPlxyXG5cdFx0PHRyPlxyXG5cdFx0XHQ8dGQ+Q2FzZSAyPFwvdGQ+XHJcblx0XHRcdDx0ZD45PFwvdGQ+XHJcblx0XHRcdDx0ZD42PFwvdGQ+XHJcblx0XHRcdDx0ZD4wPFwvdGQ+XHJcblx0XHRcdDx0ZD4xPFwvdGQ+XHJcblx0XHRcdDx0ZD41PFwvdGQ+XHJcblx0XHRcdDx0ZD43PFwvdGQ+XHJcblx0XHQ8XC90cj5cclxuXHRcdDx0cj5cclxuXHRcdFx0PHRkPkNhc2UgMjxcL3RkPlxyXG5cdFx0XHQ8dGQ+OTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NzxcL3RkPlxyXG5cdFx0XHQ8dGQ+MDxcL3RkPlxyXG5cdFx0XHQ8dGQ+MTxcL3RkPlxyXG5cdFx0XHQ8dGQ+NTxcL3RkPlxyXG5cdFx0XHQ8dGQ+ODxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0PFwvdGJvZHk+XHJcbjxcL3RhYmxlPlxyXG5cclxuPHA+WW91ciBqb2IgaXMgdG8gd3JpdGUgYSBwcm9ncmFtIHdoaWNoIHNvbHZlcyB0aGlzIHB1enpsZS48XC9wPiIsImlucHV0IjoiPHA+VGhlIGlucHV0IGNvbnNpc3RzIG9mIGEgbnVtYmVyIG9mIGRhdGFzZXRzLiBUaGUgZW5kIG9mIHRoZSBpbnB1dCBpcyBpbmRpY2F0ZWQgYnkgYSBsaW5lIGNvbnRhaW5pbmcgYSB6ZXJvLjxcL3A+XHJcblxyXG48cD5UaGUgbnVtYmVyIG9mIGRhdGFzZXRzIGlzIG5vIG1vcmUgdGhhbiAxMDAuIEVhY2ggZGF0YXNldCBpcyBmb3JtYXR0ZWQgYXMgZm9sbG93cy48XC9wPlxyXG48cHJlPk4gXHJcblNUUklORyAxIFxyXG5TVFJJTkcgMiBcclxuLi4uIFxyXG5TVFJJTkcgTiBcclxuPFwvcHJlPlxyXG48cD5UaGUgZmlyc3QgbGluZSBvZiBhIGRhdGFzZXQgY29udGFpbnMgYW4gaW50ZWdlciBOIHdoaWNoIGlzIHRoZSBudW1iZXIgb2YgaW50ZWdlcnMgYXBwZWFyaW5nIGluIHRoZSBlcXVhdGlvbi4gRWFjaCBvZiB0aGUgZm9sbG93aW5nIE4gbGluZXMgY29udGFpbnMgYSBzdHJpbmcgY29tcG9zZWQgb2YgdXBwZXJjYXNlIGFscGhhYmV0aWMgY2hhcmFjdGVycyAmIzM5O0EmIzM5Oy0mIzM5O1omIzM5OyB3aGljaCBtZWFuIG1hc2tlZCBkaWdpdHMuPFwvcD5cclxuXHJcbjxwPkVhY2ggZGF0YXNldCBleHByZXNzZXMgdGhlIGZvbGxvd2luZyBlcXVhdGlvbi48XC9wPlxyXG5cclxuPHByZT5TVFJJTkcgMSArIFNUUklORyAyICsgLi4uICsgU1RSSU5HIE4gLTEgPSBTVFJJTkcgTjxcL3ByZT5cclxuXHJcbjxwPlRoZSBpbnRlZ2VyIE4gaXMgZ3JlYXRlciB0aGFuIDIgYW5kIGxlc3MgdGhhbiAxMy4gVGhlIGxlbmd0aCBvZiBTVFJJTkcgaSBpcyBncmVhdGVyIHRoYW4gMCBhbmQgbGVzcyB0aGFuIDkuIFRoZSBudW1iZXIgb2YgZGlmZmVyZW50IGFscGhhYmV0aWMgY2hhcmFjdGVycyBhcHBlYXJpbmcgaW4gZWFjaCBkYXRhc2V0IGlzIGdyZWF0ZXIgdGhhbiAwIGFuZCBsZXNzIHRoYW4gMTEuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+Rm9yIGVhY2ggZGF0YXNldCwgb3V0cHV0IGEgc2luZ2xlIGxpbmUgY29udGFpbmluZyB0aGUgbnVtYmVyIG9mIGRpZmZlcmVudCBkaWdpdCBhc3NpZ25tZW50cyB0aGF0IHNhdGlzZnkgdGhlIGVxdWF0aW9uLjxcL3A+XHJcblxyXG48cD5UaGUgb3V0cHV0IG11c3Qgbm90IGNvbnRhaW4gYW55IHN1cGVyZmx1b3VzIGNoYXJhY3RlcnMuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMSIsImh0bWxfdGl0bGUiOiIwIiwicHJvYmxlbV9sYW5nX3Rjb2RlIjoiRW5nbGlzaCJ9XQ==

출처

ICPC > Regionals > Asia Pacific > Japan > Japan Domestic Contest > 2009 Japan Domestic Contest C번

  • 문제를 번역한 사람: baekjoon
  • 문제의 오타를 찾은 사람: kazel