시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 128 MB307642.857%

문제

상근이는 DNA 수열을 연구하는 컴퓨터 과학자이다. 오늘은 두 문자열의 최대 공통 부분 수열을 구해보려고 한다.

알파벳 Σ으로 이루어진 단어 w = a1a2...ar (ai ∈ Σ for i = 1,2,...r)이 있다. w의 부분 수열은 1 ≤ i1 < i2 < .... < is ≤ r을 만족하는 x=ai1ai2...ais 이다. 모든 j = 1,2,...,s-1에 대해서 ij+1 = ij + 1을 만족하는 부분 수열 x를 w의 세그먼트라고 한다. 예를 들어, lovely는 ove의 세그먼트이다. 하지만, loly는 lovely의 부분 수열이지만, 세그먼트는 아니다.

두 단어 w1과 w2의 부분 수열이 되는 단어를 공통 부분 수열이라고 한다. 최대 공통 부분 수열은 w1와 w2의 공통 수열 중에서 길이가 가장 긴 것을 말한다. 예를 들어, w1 = lovxxelyxxxxx, w2 = xxxxxxxlovely인 경우에 w3 = lovely와 w4 = xxxxxxx는 w1와 w2의 공통 부분 수열이다. w4는 길이가 7이며, 두 단어 w1과 w2의 최대 공통 부분 수열이 된다. 길이가 0인 빈 단어는 항상 공통 부분 수열이다.

상근이는 부분 수열이 반드시 길이가 K이상인 공통 세그먼트를 포함해야 한다는 조건을 추가했다. 예를 들어, K=3인 경우에 lovxxelyxxxxx와 xxxxxxxlovely의 공통 부분 수열로 lovely는 가능하지만, xxxxxxx는 가능하지 않다. xxxxxxx에는 길이가 3 이상인 공통 세그먼트가 포함되어 있지 않기 때문이다.

두 단어가 주어졌을 때, 길이가 K 이상인 공통 세그먼트를 포함하는 최대 공통 부분 수열의 길이를 구하는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 K가 주어진다. (1 ≤ K ≤ 100) 다음 두 줄에는 알파벳 소문자로만 이루어진 두 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같으며, 103을 넘지 않는다.

입력의 마지막 줄에는 0이 하나 주어진다.

출력

각 테스트 케이스마다 길이가 K 이상인 공통 세그먼트를 포함한 최대 공통 부분 수열의 길이를 출력한다. 만약, 0보다 큰 공통 수열이 없는 경우에는 0을 출력한다.

예제 입력 1

3
lovxxelyxxxxx
xxxxxxxlovely
1
lovxxelyxxxxx
xxxxxxxlovely
3
lovxxxelxyxxxx
xxxlovelyxxxxxxx
4
lovxxxelyxxx
xxxxxxlovely
0

예제 출력 1

6
7
10
0
W3sicHJvYmxlbV9pZCI6IjU3MjIiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJETkEgXHViZDgwXHViZDg0IFx1YzIxOFx1YzVmNCIsImRlc2NyaXB0aW9uIjoiPHA+XHVjMGMxXHVhZGZjXHVjNzc0XHViMjk0IEROQSBcdWMyMThcdWM1ZjRcdWM3NDQgXHVjNWYwXHVhZDZjXHVkNTU4XHViMjk0IFx1Y2VmNFx1ZDRlOFx1ZDEzMCBcdWFjZmNcdWQ1NTlcdWM3OTBcdWM3NzRcdWIyZTQuIFx1YzYyNFx1YjI5OFx1Yzc0MCBcdWI0NTAgXHViYjM4XHVjNzkwXHVjNWY0XHVjNzU4IFx1Y2Q1Y1x1YjMwMCBcdWFjZjVcdWQxYjUgXHViZDgwXHViZDg0IFx1YzIxOFx1YzVmNFx1Yzc0NCBcdWFkNmNcdWQ1NzRcdWJjZjRcdWI4MjRcdWFjZTAgXHVkNTVjXHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWM1NGNcdWQzMGNcdWJjYjMgJlNpZ21hO1x1YzczY1x1Yjg1YyBcdWM3NzRcdWI4ZThcdWM1YjRcdWM5YzQgXHViMmU4XHVjNWI0IHcgPSBhPHN1Yj4xPFwvc3ViPmE8c3ViPjI8XC9zdWI+Li4uYTxzdWI+cjxcL3N1Yj4gKGE8c3ViPmk8XC9zdWI+ICZpc2luOyAmU2lnbWE7IGZvciBpID0gMSwyLC4uLnIpXHVjNzc0IFx1Yzc4OFx1YjJlNC4gd1x1Yzc1OCBcdWJkODBcdWJkODQgXHVjMjE4XHVjNWY0XHVjNzQwIDEgJmxlOyBpPHN1Yj4xPFwvc3ViPiAmbHQ7IGk8c3ViPjI8XC9zdWI+ICZsdDsgLi4uLiAmbHQ7IGk8c3ViPnM8XC9zdWI+ICZsZTsgclx1Yzc0NCBcdWI5Y2NcdWM4NzFcdWQ1NThcdWIyOTQgeD1hPHN1Yj5pPHN1Yj4xPFwvc3ViPjxcL3N1Yj5hPHN1Yj5pPHN1Yj4yPFwvc3ViPjxcL3N1Yj4uLi5hPHN1Yj5pPHN1Yj5zPFwvc3ViPjxcL3N1Yj4gXHVjNzc0XHViMmU0LiBcdWJhYThcdWI0ZTAgaiA9IDEsMiwuLi4scy0xXHVjNWQwIFx1YjMwMFx1ZDU3NFx1YzExYyBpPHN1Yj5qKzE8XC9zdWI+ID0gaTxzdWI+ajxcL3N1Yj4gKyAxXHVjNzQ0IFx1YjljY1x1Yzg3MVx1ZDU1OFx1YjI5NCBcdWJkODBcdWJkODQgXHVjMjE4XHVjNWY0IHhcdWI5N2Mgd1x1Yzc1OCBcdWMxMzhcdWFkZjhcdWJhM2NcdWQyYjhcdWI3N2NcdWFjZTAgXHVkNTVjXHViMmU0LiBcdWM2MDhcdWI5N2MgXHViNGU0XHVjNWI0LCBsb3ZlbHlcdWIyOTQgb3ZlXHVjNzU4IFx1YzEzOFx1YWRmOFx1YmEzY1x1ZDJiOFx1Yzc3NFx1YjJlNC4gXHVkNTU4XHVjOWMwXHViOWNjLCBsb2x5XHViMjk0IGxvdmVseVx1Yzc1OCBcdWJkODBcdWJkODQgXHVjMjE4XHVjNWY0XHVjNzc0XHVjOWMwXHViOWNjLCBcdWMxMzhcdWFkZjhcdWJhM2NcdWQyYjhcdWIyOTQgXHVjNTQ0XHViMmM4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWI0NTAgXHViMmU4XHVjNWI0IHc8c3ViPjE8XC9zdWI+XHVhY2ZjIHc8c3ViPjI8XC9zdWI+XHVjNzU4IFx1YmQ4MFx1YmQ4NCBcdWMyMThcdWM1ZjRcdWM3NzQgXHViNDE4XHViMjk0IFx1YjJlOFx1YzViNFx1Yjk3YyBcdWFjZjVcdWQxYjUgXHViZDgwXHViZDg0IFx1YzIxOFx1YzVmNFx1Yzc3NFx1Yjc3Y1x1YWNlMCBcdWQ1NWNcdWIyZTQuIFx1Y2Q1Y1x1YjMwMCBcdWFjZjVcdWQxYjUgXHViZDgwXHViZDg0IFx1YzIxOFx1YzVmNFx1Yzc0MCB3PHN1Yj4xPFwvc3ViPlx1YzY0MCB3PHN1Yj4yPFwvc3ViPlx1Yzc1OCBcdWFjZjVcdWQxYjUgXHVjMjE4XHVjNWY0IFx1YzkxMVx1YzVkMFx1YzExYyBcdWFlMzhcdWM3NzRcdWFjMDAgXHVhYzAwXHVjN2E1IFx1YWUzNCBcdWFjODNcdWM3NDQgXHViOWQwXHVkNTVjXHViMmU0LiBcdWM2MDhcdWI5N2MgXHViNGU0XHVjNWI0LCB3PHN1Yj4xPFwvc3ViPiA9IGxvdnh4ZWx5eHh4eHgsIHc8c3ViPjI8XC9zdWI+ID0geHh4eHh4eGxvdmVseVx1Yzc3OCBcdWFjYmRcdWM2YjBcdWM1ZDAgdzxzdWI+MzxcL3N1Yj4gPSBsb3ZlbHlcdWM2NDAgdzxzdWI+NDxcL3N1Yj4gPSB4eHh4eHh4XHViMjk0IHc8c3ViPjE8XC9zdWI+XHVjNjQwIHc8c3ViPjI8XC9zdWI+XHVjNzU4IFx1YWNmNVx1ZDFiNSBcdWJkODBcdWJkODQgXHVjMjE4XHVjNWY0XHVjNzc0XHViMmU0LiB3PHN1Yj40PFwvc3ViPlx1YjI5NCBcdWFlMzhcdWM3NzRcdWFjMDAgN1x1Yzc3NFx1YmE3MCwgXHViNDUwIFx1YjJlOFx1YzViNCB3PHN1Yj4xPFwvc3ViPlx1YWNmYyB3PHN1Yj4yPFwvc3ViPlx1Yzc1OCBcdWNkNWNcdWIzMDAgXHVhY2Y1XHVkMWI1IFx1YmQ4MFx1YmQ4NCBcdWMyMThcdWM1ZjRcdWM3NzQgXHViNDFjXHViMmU0LiBcdWFlMzhcdWM3NzRcdWFjMDAgMFx1Yzc3OCBcdWJlNDggXHViMmU4XHVjNWI0XHViMjk0IFx1ZDU2ZFx1YzBjMSBcdWFjZjVcdWQxYjUgXHViZDgwXHViZDg0IFx1YzIxOFx1YzVmNFx1Yzc3NFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjMGMxXHVhZGZjXHVjNzc0XHViMjk0IFx1YmQ4MFx1YmQ4NCBcdWMyMThcdWM1ZjRcdWM3NzQgXHViYzE4XHViNGRjXHVjMmRjIFx1YWUzOFx1Yzc3NFx1YWMwMCBLXHVjNzc0XHVjMGMxXHVjNzc4IFx1YWNmNVx1ZDFiNSBcdWMxMzhcdWFkZjhcdWJhM2NcdWQyYjhcdWI5N2MgXHVkM2VjXHVkNTY4XHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNFx1YjI5NCBcdWM4NzBcdWFjNzRcdWM3NDQgXHVjZDk0XHVhYzAwXHVkNTg4XHViMmU0LiBcdWM2MDhcdWI5N2MgXHViNGU0XHVjNWI0LCBLPTNcdWM3NzggXHVhY2JkXHVjNmIwXHVjNWQwIGxvdnh4ZWx5eHh4eHhcdWM2NDAgeHh4eHh4eGxvdmVseVx1Yzc1OCBcdWFjZjVcdWQxYjUgXHViZDgwXHViZDg0IFx1YzIxOFx1YzVmNFx1Yjg1YyBsb3ZlbHlcdWIyOTQgXHVhYzAwXHViMmE1XHVkNTU4XHVjOWMwXHViOWNjLCB4eHh4eHh4XHViMjk0IFx1YWMwMFx1YjJhNVx1ZDU1OFx1YzljMCBcdWM1NGFcdWIyZTQuIHh4eHh4eHhcdWM1ZDBcdWIyOTQgXHVhZTM4XHVjNzc0XHVhYzAwIDMgXHVjNzc0XHVjMGMxXHVjNzc4IFx1YWNmNVx1ZDFiNSBcdWMxMzhcdWFkZjhcdWJhM2NcdWQyYjhcdWFjMDAgXHVkM2VjXHVkNTY4XHViNDE4XHVjNWI0IFx1Yzc4OFx1YzljMCBcdWM1NGFcdWFlMzAgXHViNTRjXHViYjM4XHVjNzc0XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWI0NTAgXHViMmU4XHVjNWI0XHVhYzAwIFx1YzhmY1x1YzViNFx1Yzg0Y1x1Yzc0NCBcdWI1NGMsIFx1YWUzOFx1Yzc3NFx1YWMwMCBLIFx1Yzc3NFx1YzBjMVx1Yzc3OCBcdWFjZjVcdWQxYjUgXHVjMTM4XHVhZGY4XHViYTNjXHVkMmI4XHViOTdjIFx1ZDNlY1x1ZDU2OFx1ZDU1OFx1YjI5NCBcdWNkNWNcdWIzMDAgXHVhY2Y1XHVkMWI1IFx1YmQ4MFx1YmQ4NCBcdWMyMThcdWM1ZjRcdWM3NTggXHVhZTM4XHVjNzc0XHViOTdjIFx1YWQ2Y1x1ZDU1OFx1YjI5NCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHVjNzkxXHVjMTMxXHVkNTU4XHVjMmRjXHVjNjI0LjxcL3A+XHJcbiIsImlucHV0IjoiPHA+XHVjNzg1XHViODI1XHVjNzQwIFx1YzVlY1x1YjdlYyBcdWFjMWNcdWM3NTggXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1Yjg1YyBcdWM3NzRcdWI4ZThcdWM1YjRcdWM4MzggXHVjNzg4XHViMmU0LiBcdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1Yzc1OCBcdWNjYWJcdWM5ZjggXHVjOTA0XHVjNWQwXHViMjk0IEtcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiAoMSAmbGU7IEsgJmxlOyAxMDApIFx1YjJlNFx1Yzc0YyBcdWI0NTAgXHVjOTA0XHVjNWQwXHViMjk0IFx1YzU0Y1x1ZDMwY1x1YmNiMyBcdWMxOGNcdWJiMzhcdWM3OTBcdWI4NWNcdWI5Y2MgXHVjNzc0XHViOGU4XHVjNWI0XHVjOWM0IFx1YjQ1MCBcdWJiMzhcdWM3OTBcdWM1ZjRcdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWJiMzhcdWM3OTBcdWM1ZjRcdWM3NTggXHVhZTM4XHVjNzc0XHViMjk0IDFcdWJjZjRcdWIyZTQgXHVkMDZjXHVhYzcwXHViMDk4IFx1YWMxOVx1YzczY1x1YmE3MCwgMTA8c3VwPjM8XC9zdXA+XHVjNzQ0IFx1YjExOFx1YzljMCBcdWM1NGFcdWIyOTRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1Yzc4NVx1YjgyNVx1Yzc1OCBcdWI5YzhcdWM5YzBcdWI5YzkgXHVjOTA0XHVjNWQwXHViMjk0IDBcdWM3NzQgXHVkNTU4XHViMDk4IFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1YjljOFx1YjJlNCBcdWFlMzhcdWM3NzRcdWFjMDAgSyBcdWM3NzRcdWMwYzFcdWM3NzggXHVhY2Y1XHVkMWI1IFx1YzEzOFx1YWRmOFx1YmEzY1x1ZDJiOFx1Yjk3YyBcdWQzZWNcdWQ1NjhcdWQ1NWMgXHVjZDVjXHViMzAwIFx1YWNmNVx1ZDFiNSBcdWJkODBcdWJkODQgXHVjMjE4XHVjNWY0XHVjNzU4IFx1YWUzOFx1Yzc3NFx1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuIFx1YjljY1x1YzU3ZCwgMFx1YmNmNFx1YjJlNCBcdWQwNzAgXHVhY2Y1XHVkMWI1IFx1YzIxOFx1YzVmNFx1Yzc3NCBcdWM1YzZcdWIyOTQgXHVhY2JkXHVjNmIwXHVjNWQwXHViMjk0IDBcdWM3NDQgXHVjZDljXHViODI1XHVkNTVjXHViMmU0LjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjAiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiJ9LHsicHJvYmxlbV9pZCI6IjU3MjIiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJETkEgU3Vic2VxdWVuY2VzIiwiZGVzY3JpcHRpb24iOiI8cD5UaG9tYXMsIGEgY29tcHV0ZXIgc2NpZW50aXN0IHRoYXQgd29ya3Mgd2l0aCBETkEgc2VxdWVuY2VzLCBuZWVkcyB0byBjb21wdXRlIGxvbmdlc3QgY29tbW9uIHN1YnNlcXVlbmNlcyBvZiBnaXZlbiBwYWlycyBvZiBzdHJpbmdzLiBDb25zaWRlciBhbiBhbHBoYWJldCAmU2lnbWE7IG9mIGxldHRlcnMgYW5kIGEgd29yZCB3ID0gYTxzdWI+MTxcL3N1Yj5hPHN1Yj4yPFwvc3ViPi4uLmE8c3ViPnI8XC9zdWI+LCB3aGVyZSBhPHN1Yj5pPFwvc3ViPiAmaXNpbjsgJlNpZ21hOywgZm9vciBpID0gMSwgMiwgLi4uICwgci4gQSBzdWJzZXF1ZW5jZSBvZiB3IGlzIGEgd29yZCB4ID0gYTxzdWI+aTxzdWI+MTxcL3N1Yj48XC9zdWI+YTxzdWI+aTxzdWI+MjxcL3N1Yj48XC9zdWI+Li4uYTxzdWI+aTxzdWI+czxcL3N1Yj48XC9zdWI+IHN1Y2ggdGhhdCAxICZsZTsgaTxzdWI+MTxcL3N1Yj4mbmJzcDsmbHQ7IGk8c3ViPjI8XC9zdWI+Jm5ic3A7Jmx0OyAuLi4uICZsdDsgaTxzdWI+czxcL3N1Yj4mbmJzcDsmbGU7IHIuIFN1YnNlcXVlbmNlIHggaXMgYSBzZWdtZW50IG9mIHcgaWYmbmJzcDtpPHN1Yj5qKzE8XC9zdWI+Jm5ic3A7PSBpPHN1Yj5qPFwvc3ViPiZuYnNwOysgMSwgZm9yIGogPSAxLCAyLCAuLi4sIHMgJm1pbnVzOyAxLiBGb3IgZXhhbXBsZSB0aGUgd29yZCBvdmUgaXMgYSBzZWdtZW50IG9mIHRoZSB3b3JkIGxvdmVseSwgd2hlcmVhcyB0aGUgd29yZCBsb2x5IGlzIGEgc3Vic2VxdWVuY2Ugb2YgbG92ZWx5LCBidXQgbm90IGEgc2VnbWVudC48XC9wPlxyXG5cclxuPHA+QSB3b3JkIGlzIGEgY29tbW9uIHN1YnNlcXVlbmNlIG9mIHR3byB3b3JkcyB3PHN1Yj4xPFwvc3ViPiBhbmQgdzxzdWI+MjxcL3N1Yj4gaWYgaXQgaXMgYSBzdWJzZXF1ZW5jZSBvZiBlYWNoIG9mIHRoZSB0d28gd29yZHMuIEEgbG9uZ2VzdCBjb21tb24gc3Vic2VxdWVuY2Ugb2YgdzxzdWI+MTxcL3N1Yj4gYW5kIHc8c3ViPjI8XC9zdWI+IGlzIGEgY29tbW9uIHN1YnNlcXVlbmNlIG9mIHc8c3ViPjE8XC9zdWI+IGFuZCB3PHN1Yj4yPFwvc3ViPiBoYXZpbmcgdGhlIGxhcmdlc3QgcG9zc2libGUgbGVuZ3RoLiBGb3IgZXhhbXBsZSwgY29uc2lkZXIgdGhlIHdvcmRzIHc8c3ViPjE8XC9zdWI+ID0gbG92eHhlbHl4eHh4eCBhbmQgdzxzdWI+MjxcL3N1Yj4gPSB4eHh4eHh4bG92ZWx5LiBUaGUgd29yZHMgdzxzdWI+MzxcL3N1Yj4gPWxvdmVseSBhbmQgdzxzdWI+NDxcL3N1Yj4gPSB4eHh4eHh4LCB0aGUgbGF0dGVyIG9mIGxlbmd0aCA3LCBhcmUgYm90aCBjb21tb24gc3Vic2VxdWVuY2VzIG9mIHc8c3ViPjE8XC9zdWI+IGFuZCB3PHN1Yj4yPFwvc3ViPi4gSW4gZmFjdCwgdzxzdWI+NDxcL3N1Yj4gaXMgdGhlaXIgbG9uZ2VzdCBjb21tb24gc3Vic2VxdWVuY2UuIE5vdGljZSB0aGF0IHRoZSBlbXB0eSB3b3JkLCBvZiBsZW5ndGggemVybywgaXMgYWx3YXlzIGEgY29tbW9uIHN1YnNlcXVlbmNlLCBhbHRob3VnaCBub3QgbmVjZXNzYXJpbHkgdGhlIGxvbmdlc3QuPFwvcD5cclxuXHJcbjxwPkluIHRoZSBjYXNlIG9mIFRob21hcywgdGhlcmUgaXMgYW4gZXh0cmEgcmVxdWlyZW1lbnQ6IHRoZSBzdWJzZXF1ZW5jZSBtdXN0IGJlIGZvcm1lZCBmcm9tIGNvbW1vbiBzZWdtZW50cyBoYXZpbmcgbGVuZ3RoIEsgb3IgbW9yZS4gRm9yIGV4YW1wbGUsIGlmIFRob21hcyBkZWNpZGVzIHRoYXQgSyA9IDMsIHRoZW4gaGUgY29uc2lkZXJzIGxvdmVseSB0byBiZSBhbiBhY2NlcHRhYmxlIGNvbW1vbiBzdWJzZXF1ZW5jZSBvZiBsb3Z4eGVseXh4eHh4IGFuZCB4eHh4eHh4bG92ZWx5LCB3aGVyZWFzIHh4eHh4eHgsIHdoaWNoIGhhcyBsZW5ndGggNyBhbmQgaXMgYWxzbyBhIGNvbW1vbiBzdWJzZXF1ZW5jZSwgaXMgbm90IGFjY2VwdGFibGUuIENhbiB5b3UgaGVscCBUaG9tYXM/PFwvcD5cclxuIiwiaW5wdXQiOiI8cD5UaGUgaW5wdXQgY29udGFpbnMgc2V2ZXJhbCB0ZXN0IGNhc2VzLiBUaGUgXHVmYjAxcnN0IGxpbmUgb2YgYSB0ZXN0IGNhc2UgY29udGFpbnMgYW4gaW50ZWdlciBLIHJlcHJlc2VudGluZyB0aGUgbWluaW11bSBsZW5ndGggb2YgY29tbW9uIHNlZ21lbnRzLCB3aGVyZSAxICZsZTsgSyAmbGU7IDEwMC4gVGhlIG5leHQgdHdvIGxpbmVzIGNvbnRhaW4gZWFjaCBhIHN0cmluZyBvbiBsb3dlcmNhc2UgbGV0dGVycyBmcm9tIHRoZSByZWd1bGFyIGFscGhhYmV0IG9mIDI2IGxldHRlcnMuIFRoZSBsZW5ndGggbCBvZiBlYWNoIHN0cmluZyBzYXRpc1x1ZmIwMWVzIHRoZSBpbmVxdWFsaXR5IDEgJmxlOyBsICZsZTsgMTA8c3VwPjM8XC9zdXA+LiBUaGVyZSBhcmUgbm8gc3BhY2VzIG9uIGFueSBsaW5lIGluIHRoZSBpbnB1dC4gVGhlIGVuZCBvZiB0aGUgaW5wdXQgaXMgaW5kaWNhdGVkIGJ5IGEgbGluZSBjb250YWluaW5nIGEgemVyby48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5Gb3IgZWFjaCB0ZXN0IGNhc2UgaW4gdGhlIGlucHV0LCB5b3VyIHByb2dyYW0gbXVzdCBwcmludCBhIHNpbmdsZSBsaW5lLCBjb250YWluaW5nIHRoZSBsZW5ndGggb2YgdGhlIGxvbmdlc3Qgc3Vic2VxdWVuY2UgZm9ybWVkIGJ5IGNvbnNlY3V0aXZlIHNlZ21lbnRzIG9mIGxlbmd0aCBhdCBsZWFzdCBLIGZyb20gYm90aCBzdHJpbmdzLiBJZiBubyBzdWNoIGNvbW1vbiBzdWJzZXF1ZW5jZSBvZiBsZW5ndGggZ3JlYXRlciB0aGFuIHplcm8gZXhpc3RzLCB0aGVuIDAgbXVzdCBiZSBwcmludGVkLjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IkVuZ2xpc2gifV0=

출처

ICPC > Regionals > Latin America > South America Regional Contests 2008 D번