시간 제한메모리 제한제출정답맞힌 사람정답 비율
4.5 초 (하단 참고)512 MB54221737.778%

문제

Albert는 친구들과 소수 (prime) 카드 게임을 하기로 했다. 총 m명의 플레이어가 있고, 양의 정수가 하나씩 적혀있는 n장의 카드가 있다. 편의상 카드에 적힌 수를 v[1], v[2], ..., v[n]이라 하자.

먼저 플레이어들에게 카드를 나눠준 후, 각자 점수를 계산하여 승자를 가린다.

n장의 카드는 아래 규칙에 따라 m명의 플레이어에게 나누어져야 한다:

  1. 각 카드는 반드시 한 명의 플레이어에게 주어진다.
  2. 각 플레이어는 최소 한 장의 카드를 받는다.

n장의 카드를 모두 분배한 후 아래 규칙에 따라 각자 점수를 계산한다:

  1. 먼저, 자신이 받은 카드에 적힌 수를 모두 더한다. 이를 S라 하자.
  2. S에 가장 가까우면서 S가 아닌 소수(prime number)를 P라 하자 (그런 소수가 여럿인 경우 아무 것 하나를 P라 한다).
  3. 해당 플레이어의 점수는 | S - P | 이다 ('|'는 절대값 기호이다).

예를 들어 n = m = 3이고 카드에 적힌 수가 [1, 2, 3]이라 하자. 이 때, 각 플레이어는 정확히 한 장씩 카드를 받는다.

  • 1이 적힌 카드를 받은 플레이어의 점수는 1이다 (1에 가장 가까운 소수는 2이다).
  • 2가 적힌 카드를 받은 플레이어의 점수는 1이다 (2에 가장 가까운 (2가 아닌) 소수는 3이다).
  • 3이 적힌 카드를 받은 플레이어의 점수느 1이다 (3에 가장 가까운 소수는 2이다).
  • 이 예제에서는 모든 플레이어의 점수가 1로 동일하다 (모두가 공동 승자이다).

다른 예로, n = 3, m = 2이고 카드에 적힌 수가 [23, 29, 41]이라 하자. 이 때, 한 플레이어는 카드 한 장을 받고 다른 플레이어는 두 장을 받게 된다. 아래와 같은 세 가지 방법으로 카드를 분배할 수 있다.

  • 방법 1: [23] 과 [29, 41]로 분배하는 경우, 23에 가장 가까운 소수는 19이고 (29+41)에 가장 가까운 소수는 71이다. 따라서 두 플레이어의 점수는 각각 4와 1이다.
  • 방법 2: [29] 과 [23, 41]로 분배하는 경우, 29에 가장 가까운 소수는 31이고 (23+41)에 가장 가까운 소수는 67이다. 따라서 두 플레이어의 점수는 2로 같다.
  • 방법 3: [41] 과 [23, 29]로 분배하는 경우, 41에 가장 가까운 소수는 43이고 (23+29)에 가장 가까운 소수는 53이다. 따라서 두 플레이어의 점수는 각각 2와 1이다.

Albert는 게임의 흥미를 위해 승자의 점수가 최소가 되도록 카드를 나눠주고 싶다. 위에 언급한 두 번째 예제의 경우 방법 1은 승자의 점수가 4이고 방법 2와 3은 승자의 점수가 2가 되므로 정답은 2가 된다. Albert가 달성 할 수 있는 승자의 점수 최소값을 구해보자. 

소수 (prime number): 양의 정수 P가 1보다 크고 P의 약수가 1과 P뿐이면 소수이다.

입력

첫 줄에 테스트 케이스의 수 T가 주어진다.

각 테스트 케이스는 두 줄에 걸쳐 주어진다.

첫 줄에 n과 m이 공백으로 구분되어 주어진다.

둘째 줄에 n개의 정수가 (v[1], ..., v[n]) 공백으로 구분되어 주어진다.

출력

각 테스트 케이스의 정답을 각 줄에 출력한다.

제한

  • 1 ≤ T ≤ 6
  • 1 ≤ m ≤ n ≤ 15
  • 1 ≤ v[i] ≤ 5,000,000
  • v[i]의 총합 <= 5,000,000 

예제 입력 1

6
3 3
1 2 3
3 3
23 29 41
3 2
23 29 41
4 4
23 29 31 37
5 2
10 20 30 40 50
5 3
10 20 30 40 50

예제 출력 1

1
4
2
4
1
1

예제 1: 본문에서 다루었다.

예제 2: 추가 설명 없음.

예제 3: 본문에서 다루었다.

예제 4: 추가 설명 없음.

예제 5: 가령 [10, 20, 30, 50]과 [40]을 나눠주면 두 플레이어 모두 1점을 얻게 된다.

예제 6: 가령 [10], [40], 그리고 [20, 30, 50]을 나눠주면 모든 플레이어가 각각 1점을 얻게 된다.

W3sicHJvYmxlbV9pZCI6IjIzMDIzIiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHVjMThjXHVjMjE4IFx1Y2U3NFx1YjRkYyBcdWFjOGNcdWM3ODQiLCJkZXNjcmlwdGlvbiI6IjxwPkFsYmVydFx1YjI5NCBcdWNlNWNcdWFkNmNcdWI0ZTRcdWFjZmMgXHVjMThjXHVjMjE4IChwcmltZSkgXHVjZTc0XHViNGRjIFx1YWM4Y1x1Yzc4NFx1Yzc0NCBcdWQ1NThcdWFlMzBcdWI4NWMgXHVkNTg4XHViMmU0LiBcdWNkMWQgbVx1YmE4NVx1Yzc1OCBcdWQ1MGNcdWI4MDhcdWM3NzRcdWM1YjRcdWFjMDAgXHVjNzg4XHVhY2UwLCZuYnNwO1x1YzU5MVx1Yzc1OCBcdWM4MTVcdWMyMThcdWFjMDAgXHVkNTU4XHViMDk4XHVjNTI5Jm5ic3A7XHVjODAxXHVkNjAwXHVjNzg4XHViMjk0IG5cdWM3YTVcdWM3NTggXHVjZTc0XHViNGRjXHVhYzAwIFx1Yzc4OFx1YjJlNC4mbmJzcDtcdWQzYjhcdWM3NThcdWMwYzEgXHVjZTc0XHViNGRjXHVjNWQwIFx1YzgwMVx1ZDc4YyBcdWMyMThcdWI5N2MgdlsxXSwgdlsyXSwgLi4uLCB2W25dXHVjNzc0XHViNzdjIFx1ZDU1OFx1Yzc5MC48XC9wPlxyXG5cclxuPHA+XHViYTNjXHVjODAwIFx1ZDUwY1x1YjgwOFx1Yzc3NFx1YzViNFx1YjRlNFx1YzVkMFx1YWM4YyBcdWNlNzRcdWI0ZGNcdWI5N2MgXHViMDk4XHViMjIwXHVjOTAwIFx1ZDZjNCwgXHVhYzAxXHVjNzkwIFx1YzgxMFx1YzIxOFx1Yjk3YyBcdWFjYzRcdWMwYjBcdWQ1NThcdWM1ZWMgXHVjMmI5XHVjNzkwXHViOTdjIFx1YWMwMFx1YjliMFx1YjJlNC48XC9wPlxyXG5cclxuPHA+blx1YzdhNVx1Yzc1OCBcdWNlNzRcdWI0ZGNcdWIyOTQgXHVjNTQ0XHViNzk4IFx1YWRkY1x1Y2U1OVx1YzVkMCBcdWI1MzBcdWI3N2MgbVx1YmE4NVx1Yzc1OCBcdWQ1MGNcdWI4MDhcdWM3NzRcdWM1YjRcdWM1ZDBcdWFjOGMgXHViMDk4XHViMjA0XHVjNWI0XHVjODM4XHVjNTdjJm5ic3A7XHVkNTVjXHViMmU0OjxcL3A+XHJcblxyXG48b2w+XHJcblx0PGxpPlx1YWMwMSBcdWNlNzRcdWI0ZGNcdWIyOTQgXHViYzE4XHViNGRjXHVjMmRjIFx1ZDU1YyBcdWJhODVcdWM3NTggXHVkNTBjXHViODA4XHVjNzc0XHVjNWI0XHVjNWQwXHVhYzhjIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9saT5cclxuXHQ8bGk+XHVhYzAxIFx1ZDUwY1x1YjgwOFx1Yzc3NFx1YzViNFx1YjI5NCBcdWNkNWNcdWMxOGMgXHVkNTVjIFx1YzdhNVx1Yzc1OCBcdWNlNzRcdWI0ZGNcdWI5N2MgXHViYzFiXHViMjk0XHViMmU0LjxcL2xpPlxyXG48XC9vbD5cclxuXHJcbjxwPm5cdWM3YTVcdWM3NTggXHVjZTc0XHViNGRjXHViOTdjIFx1YmFhOFx1YjQ1MCBcdWJkODRcdWJjMzBcdWQ1NWMgXHVkNmM0IFx1YzU0NFx1Yjc5OCBcdWFkZGNcdWNlNTlcdWM1ZDAgXHViNTMwXHViNzdjIFx1YWMwMVx1Yzc5MCBcdWM4MTBcdWMyMThcdWI5N2MgXHVhY2M0XHVjMGIwXHVkNTVjXHViMmU0OjxcL3A+XHJcblxyXG48b2w+XHJcblx0PGxpPlx1YmEzY1x1YzgwMCwgXHVjNzkwXHVjMmUwXHVjNzc0IFx1YmMxYlx1Yzc0MCBcdWNlNzRcdWI0ZGNcdWM1ZDAgXHVjODAxXHVkNzhjIFx1YzIxOFx1Yjk3YyBcdWJhYThcdWI0NTAgXHViMzU0XHVkNTVjXHViMmU0LiBcdWM3NzRcdWI5N2MgU1x1Yjc3YyBcdWQ1NThcdWM3OTAuPFwvbGk+XHJcblx0PGxpPlNcdWM1ZDAgXHVhYzAwXHVjN2E1IFx1YWMwMFx1YWU0Y1x1YzZiMFx1YmE3NFx1YzExYyBTXHVhYzAwIFx1YzU0NFx1YjJjYyZuYnNwO1x1YzE4Y1x1YzIxOChwcmltZSBudW1iZXIpXHViOTdjIFBcdWI3N2MgXHVkNTU4XHVjNzkwIChcdWFkZjhcdWI3ZjAgXHVjMThjXHVjMjE4XHVhYzAwIFx1YzVlY1x1YjdmZlx1Yzc3OCBcdWFjYmRcdWM2YjAgXHVjNTQ0XHViYjM0IFx1YWM4MyBcdWQ1NThcdWIwOThcdWI5N2MgUFx1Yjc3YyBcdWQ1NWNcdWIyZTQpLjxcL2xpPlxyXG5cdDxsaT5cdWQ1NzRcdWIyZjkgXHVkNTBjXHViODA4XHVjNzc0XHVjNWI0XHVjNzU4IFx1YzgxMFx1YzIxOFx1YjI5NCB8IFMgLSBQIHwgXHVjNzc0XHViMmU0ICgmIzM5O3wmIzM5O1x1YjI5NCBcdWM4MDhcdWIzMDBcdWFjMTIgXHVhZTMwXHVkNjM4XHVjNzc0XHViMmU0KS48XC9saT5cclxuPFwvb2w+XHJcblxyXG48cD5cdWM2MDhcdWI5N2MgXHViNGU0XHVjNWI0IG4gPSBtID0gM1x1Yzc3NFx1YWNlMCBcdWNlNzRcdWI0ZGNcdWM1ZDAgXHVjODAxXHVkNzhjIFx1YzIxOFx1YWMwMCBbMSwgMiwgM11cdWM3NzRcdWI3N2MgXHVkNTU4XHVjNzkwLiBcdWM3NzQgXHViNTRjLCBcdWFjMDEgXHVkNTBjXHViODA4XHVjNzc0XHVjNWI0XHViMjk0IFx1YzgxNVx1ZDY1NVx1ZDc4OCBcdWQ1NWMgXHVjN2E1XHVjNTI5IFx1Y2U3NFx1YjRkY1x1Yjk3YyBcdWJjMWJcdWIyOTRcdWIyZTQuPFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+MVx1Yzc3NCBcdWM4MDFcdWQ3OGMgXHVjZTc0XHViNGRjXHViOTdjIFx1YmMxYlx1Yzc0MCBcdWQ1MGNcdWI4MDhcdWM3NzRcdWM1YjRcdWM3NTggXHVjODEwXHVjMjE4XHViMjk0IDFcdWM3NzRcdWIyZTQgKDFcdWM1ZDAgXHVhYzAwXHVjN2E1IFx1YWMwMFx1YWU0Y1x1YzZiNCBcdWMxOGNcdWMyMThcdWIyOTQgMlx1Yzc3NFx1YjJlNCkuPFwvbGk+XHJcblx0PGxpPjJcdWFjMDAgXHVjODAxXHVkNzhjIFx1Y2U3NFx1YjRkY1x1Yjk3YyBcdWJjMWJcdWM3NDAgXHVkNTBjXHViODA4XHVjNzc0XHVjNWI0XHVjNzU4IFx1YzgxMFx1YzIxOFx1YjI5NCAxXHVjNzc0XHViMmU0ICgyXHVjNWQwIFx1YWMwMFx1YzdhNSBcdWFjMDBcdWFlNGNcdWM2YjQgKDJcdWFjMDAgXHVjNTQ0XHViMmNjKSBcdWMxOGNcdWMyMThcdWIyOTQgM1x1Yzc3NFx1YjJlNCkuPFwvbGk+XHJcblx0PGxpPjNcdWM3NzQgXHVjODAxXHVkNzhjIFx1Y2U3NFx1YjRkY1x1Yjk3YyBcdWJjMWJcdWM3NDAgXHVkNTBjXHViODA4XHVjNzc0XHVjNWI0XHVjNzU4IFx1YzgxMFx1YzIxOFx1YjI5MCAxXHVjNzc0XHViMmU0ICgzXHVjNWQwIFx1YWMwMFx1YzdhNSBcdWFjMDBcdWFlNGNcdWM2YjQgXHVjMThjXHVjMjE4XHViMjk0IDJcdWM3NzRcdWIyZTQpLjxcL2xpPlxyXG5cdDxsaT5cdWM3NzQgXHVjNjA4XHVjODFjXHVjNWQwXHVjMTFjXHViMjk0IFx1YmFhOFx1YjRlMCBcdWQ1MGNcdWI4MDhcdWM3NzRcdWM1YjRcdWM3NTggXHVjODEwXHVjMjE4XHVhYzAwIDFcdWI4NWMgXHViM2Q5XHVjNzdjXHVkNTU4XHViMmU0IChcdWJhYThcdWI0NTBcdWFjMDAgXHVhY2Y1XHViM2Q5IFx1YzJiOVx1Yzc5MFx1Yzc3NFx1YjJlNCkuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+XHViMmU0XHViOTc4IFx1YzYwOFx1Yjg1YywgbiA9IDMsIG0gPSAyXHVjNzc0XHVhY2UwIFx1Y2U3NFx1YjRkY1x1YzVkMCBcdWM4MDFcdWQ3OGMgXHVjMjE4XHVhYzAwIFsyMywgMjksIDQxXVx1Yzc3NFx1Yjc3YyBcdWQ1NThcdWM3OTAuIFx1Yzc3NCBcdWI1NGMsIFx1ZDU1YyBcdWQ1MGNcdWI4MDhcdWM3NzRcdWM1YjRcdWIyOTQgXHVjZTc0XHViNGRjIFx1ZDU1YyBcdWM3YTVcdWM3NDQgXHViYzFiXHVhY2UwIFx1YjJlNFx1Yjk3OCBcdWQ1MGNcdWI4MDhcdWM3NzRcdWM1YjRcdWIyOTQgXHViNDUwIFx1YzdhNVx1Yzc0NCBcdWJjMWJcdWFjOGMgXHViNDFjXHViMmU0LiBcdWM1NDRcdWI3OThcdWM2NDAgXHVhYzE5XHVjNzQwIFx1YzEzOCBcdWFjMDBcdWM5YzAgXHViYzI5XHViYzk1XHVjNzNjXHViODVjIFx1Y2U3NFx1YjRkY1x1Yjk3YyBcdWJkODRcdWJjMzBcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5cdWJjMjlcdWJjOTUgMTogWzIzXSBcdWFjZmMgWzI5LCA0MV1cdWI4NWMgXHViZDg0XHViYzMwXHVkNTU4XHViMjk0IFx1YWNiZFx1YzZiMCwgMjNcdWM1ZDAgXHVhYzAwXHVjN2E1IFx1YWMwMFx1YWU0Y1x1YzZiNCBcdWMxOGNcdWMyMThcdWIyOTQgMTlcdWM3NzRcdWFjZTAgKDI5KzQxKVx1YzVkMCBcdWFjMDBcdWM3YTUgXHVhYzAwXHVhZTRjXHVjNmI0IFx1YzE4Y1x1YzIxOFx1YjI5NCA3MVx1Yzc3NFx1YjJlNC4gXHViNTMwXHViNzdjXHVjMTFjIFx1YjQ1MCBcdWQ1MGNcdWI4MDhcdWM3NzRcdWM1YjRcdWM3NTggXHVjODEwXHVjMjE4XHViMjk0IFx1YWMwMVx1YWMwMSA0XHVjNjQwIDFcdWM3NzRcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1YmMyOVx1YmM5NSAyOiBbMjldIFx1YWNmYyBbMjMsIDQxXVx1Yjg1YyBcdWJkODRcdWJjMzBcdWQ1NThcdWIyOTQgXHVhY2JkXHVjNmIwLCAyOVx1YzVkMCBcdWFjMDBcdWM3YTUgXHVhYzAwXHVhZTRjXHVjNmI0IFx1YzE4Y1x1YzIxOFx1YjI5NCAzMVx1Yzc3NFx1YWNlMCAoMjMrNDEpXHVjNWQwIFx1YWMwMFx1YzdhNSBcdWFjMDBcdWFlNGNcdWM2YjQgXHVjMThjXHVjMjE4XHViMjk0IDY3XHVjNzc0XHViMmU0LiBcdWI1MzBcdWI3N2NcdWMxMWMgXHViNDUwIFx1ZDUwY1x1YjgwOFx1Yzc3NFx1YzViNFx1Yzc1OCBcdWM4MTBcdWMyMThcdWIyOTQgMlx1Yjg1YyBcdWFjMTlcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1YmMyOVx1YmM5NSAzOiBbNDFdIFx1YWNmYyBbMjMsIDI5XVx1Yjg1YyBcdWJkODRcdWJjMzBcdWQ1NThcdWIyOTQgXHVhY2JkXHVjNmIwLCA0MVx1YzVkMCBcdWFjMDBcdWM3YTUgXHVhYzAwXHVhZTRjXHVjNmI0IFx1YzE4Y1x1YzIxOFx1YjI5NCA0M1x1Yzc3NFx1YWNlMCAoMjMrMjkpXHVjNWQwIFx1YWMwMFx1YzdhNSBcdWFjMDBcdWFlNGNcdWM2YjQgXHVjMThjXHVjMjE4XHViMjk0IDUzXHVjNzc0XHViMmU0LiBcdWI1MzBcdWI3N2NcdWMxMWMgXHViNDUwIFx1ZDUwY1x1YjgwOFx1Yzc3NFx1YzViNFx1Yzc1OCBcdWM4MTBcdWMyMThcdWIyOTQgXHVhYzAxXHVhYzAxIDJcdWM2NDAgMVx1Yzc3NFx1YjJlNC48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5BbGJlcnRcdWIyOTQgXHVhYzhjXHVjNzg0XHVjNzU4IFx1ZDc2NVx1YmJmOFx1Yjk3YyBcdWM3MDRcdWQ1NzQgXHVjMmI5XHVjNzkwXHVjNzU4IFx1YzgxMFx1YzIxOFx1YWMwMCBcdWNkNWNcdWMxOGNcdWFjMDAgXHViNDE4XHViM2M0XHViODVkIFx1Y2U3NFx1YjRkY1x1Yjk3YyBcdWIwOThcdWIyMjBcdWM4ZmNcdWFjZTAgXHVjMmY2XHViMmU0LiBcdWM3MDRcdWM1ZDAgXHVjNWI4XHVhZTA5XHVkNTVjIFx1YjQ1MCBcdWJjODhcdWM5ZjggXHVjNjA4XHVjODFjXHVjNzU4IFx1YWNiZFx1YzZiMCBcdWJjMjlcdWJjOTUgMVx1Yzc0MCBcdWMyYjlcdWM3OTBcdWM3NTggXHVjODEwXHVjMjE4XHVhYzAwIDRcdWM3NzRcdWFjZTAgXHViYzI5XHViYzk1IDJcdWM2NDAgM1x1Yzc0MCBcdWMyYjlcdWM3OTBcdWM3NTggXHVjODEwXHVjMjE4XHVhYzAwIDJcdWFjMDAgXHViNDE4XHViYmMwXHViODVjIFx1YzgxNVx1YjJmNVx1Yzc0MCAyXHVhYzAwIFx1YjQxY1x1YjJlNC4gQWxiZXJ0XHVhYzAwIFx1YjJlY1x1YzEzMSBcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjI5NCBcdWMyYjlcdWM3OTBcdWM3NTggXHVjODEwXHVjMjE4IFx1Y2Q1Y1x1YzE4Y1x1YWMxMlx1Yzc0NCBcdWFkNmNcdWQ1NzRcdWJjZjRcdWM3OTAuJm5ic3A7PFwvcD5cclxuXHJcbjxwPjxlbT5cdWMxOGNcdWMyMTggKHByaW1lIG51bWJlcik6IFx1YzU5MVx1Yzc1OCBcdWM4MTVcdWMyMTggUFx1YWMwMCAxXHViY2Y0XHViMmU0IFx1ZDA2Y1x1YWNlMCBQXHVjNzU4IFx1YzU3ZFx1YzIxOFx1YWMwMCAxXHVhY2ZjIFBcdWJmZDBcdWM3NzRcdWJhNzQgXHVjMThjXHVjMjE4XHVjNzc0XHViMmU0LjxcL2VtPjxcL3A+XHJcbiIsImlucHV0IjoiPHA+XHVjY2FiIFx1YzkwNFx1YzVkMCBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHVjNzU4IFx1YzIxOCBUXHVhYzAwIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVhYzAxIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWIyOTQgXHViNDUwIFx1YzkwNFx1YzVkMCBcdWFjNzhcdWNjZDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWNjYWIgXHVjOTA0XHVjNWQwIG5cdWFjZmMgbVx1Yzc3NCBcdWFjZjVcdWJjMzFcdWM3M2NcdWI4NWMgXHVhZDZjXHViZDg0XHViNDE4XHVjNWI0IFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHViNDU4XHVjOWY4IFx1YzkwNFx1YzVkMCBuXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOFx1YWMwMCAodlsxXSwgLi4uLCB2W25dKSZuYnNwO1x1YWNmNVx1YmMzMVx1YzczY1x1Yjg1YyBcdWFkNmNcdWJkODRcdWI0MThcdWM1YjQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPlx1YWMwMSBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHVjNzU4IFx1YzgxNVx1YjJmNVx1Yzc0NCBcdWFjMDEgXHVjOTA0XHVjNWQwIFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIxIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJLb3JlYW4iLCJsaW1pdCI6Ijx1bD5cclxuXHQ8bGk+MSAmbGU7IFQgJmxlOyA2PFwvbGk+XHJcblx0PGxpPjEgJmxlOyBtICZsZTsgbiAmbGU7IDE1PFwvbGk+XHJcblx0PGxpPjEgJmxlOyB2W2ldICZsZTsgNSwwMDAsMDAwPFwvbGk+XHJcblx0PGxpPnZbaV1cdWM3NTggXHVjZDFkXHVkNTY5ICZsdDs9IDUsMDAwLDAwMCZuYnNwOzxcL2xpPlxyXG48XC91bD5cclxuIiwic2FtcGxlX2V4cGxhaW5fMSI6IjxwPlx1YzYwOFx1YzgxYyAxOiZuYnNwO1x1YmNmOFx1YmIzOFx1YzVkMFx1YzExYyBcdWIyZTRcdWI4ZThcdWM1YzhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YzYwOFx1YzgxYyAyOiZuYnNwO1x1Y2Q5NFx1YWMwMCBcdWMxMjRcdWJhODUgXHVjNWM2XHVjNzRjLjxcL3A+XHJcblxyXG48cD5cdWM2MDhcdWM4MWMgMzombmJzcDtcdWJjZjhcdWJiMzhcdWM1ZDBcdWMxMWMgXHViMmU0XHViOGU4XHVjNWM4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWM2MDhcdWM4MWMgNDombmJzcDtcdWNkOTRcdWFjMDAgXHVjMTI0XHViYTg1IFx1YzVjNlx1Yzc0Yy48XC9wPlxyXG5cclxuPHA+XHVjNjA4XHVjODFjIDU6Jm5ic3A7XHVhYzAwXHViODM5IFsxMCwgMjAsIDMwLCA1MF1cdWFjZmMgWzQwXVx1Yzc0NCBcdWIwOThcdWIyMjBcdWM4ZmNcdWJhNzQgXHViNDUwIFx1ZDUwY1x1YjgwOFx1Yzc3NFx1YzViNCBcdWJhYThcdWI0NTAgMVx1YzgxMFx1Yzc0NCBcdWM1YmJcdWFjOGMgXHViNDFjXHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWM2MDhcdWM4MWMgNjombmJzcDtcdWFjMDBcdWI4MzkgWzEwXSwgWzQwXSwgXHVhZGY4XHViOWFjXHVhY2UwIFsyMCwgMzAsIDUwXVx1Yzc0NCBcdWIwOThcdWIyMjBcdWM4ZmNcdWJhNzQgXHViYWE4XHViNGUwIFx1ZDUwY1x1YjgwOFx1Yzc3NFx1YzViNFx1YWMwMCBcdWFjMDFcdWFjMDEmbmJzcDsxXHVjODEwXHVjNzQ0IFx1YzViYlx1YWM4YyBcdWI0MWNcdWIyZTQuPFwvcD5cclxuIn0seyJwcm9ibGVtX2lkIjoiMjMwMjMiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJQcmltZSBDYXJkIEdhbWUiLCJkZXNjcmlwdGlvbiI6IjxwPkFsYmVydCBwbGF5cyB0aGUgUHJpbWUgQ2FyZCBHYW1lIHdpdGggZnJpZW5kcy4gVGhlcmUgYXJlIG0gcGxheWVycyBhbmQgdGhlcmUgYXJlIG4gY2FyZHMsIGVhY2ggd2l0aCBhIHBvc2l0aXZlIG51bWJlciB3cml0dGVuIG9uIGl0LiBGb3IgY29udmVuaWVuY2UsIGxldCB2WzFdLCAuLi4sIHZbbl0gYmUgdGhlIHBvc2l0aXZlIG51bWJlcnMgd3JpdHRlbiBvbiB0aGUgY2FyZHMuPFwvcD5cclxuXHJcbjxwPkZpcnN0LCB0aGUgY2FyZHMgYXJlIGRpc3RyaWJ1dGVkIHRvIHRoZSBwbGF5ZXJzLCBhbmQgZWFjaCBwbGF5ZXIgd2lsbCBjYWxjdWxhdGUgdGhlaXIgc2NvcmUgdG8gZGV0ZXJtaW5lIHRoZSB3aW5uZXIuPFwvcD5cclxuXHJcbjxwPlRoZSBuIGNhcmRzIG11c3QgYmUgZGlzdHJpYnV0ZWQgdG8gdGhlIG0gcGxheWVycyBhY2NvcmRpbmcgdG8gdGhlIGZvbGxvd2luZyBydWxlczo8XC9wPlxyXG5cclxuPG9sPlxyXG5cdDxsaT5FdmVyeSBjYXJkIG11c3QgYmUgZGlzdHJpYnV0ZWQgdG8gb25lJm5ic3A7cGxheWVyLjxcL2xpPlxyXG5cdDxsaT5FdmVyeSBwbGF5ZXIgbXVzdCByZWNlaXZlIGF0IGxlYXN0IG9uZSBjYXJkLjxcL2xpPlxyXG48XC9vbD5cclxuXHJcbjxwPkFmdGVyIHRoZSBuIGNhcmRzIGFyZSBkaXN0cmlidXRlZCwgZWFjaCBwbGF5ZXImIzM5O3Mgc2NvcmUgaXMgY2FsY3VsYXRlZCBhcyBmb2xsb3dzOjxcL3A+XHJcblxyXG48b2w+XHJcblx0PGxpPkZpcnN0LCBzdW0gdXAgdGhlIG51bWJlcnMgd3JpdHRlbiBvbiB0aGUgY2FyZHMgdGhlIHBsYXllciByZWNlaXZlZC4gTGV0IHRoaXMgc3VtIGJlIFMuPFwvbGk+XHJcblx0PGxpPkxldCBQIGJlIGEgcHJpbWUgbnVtYmVyIHRoYXQgaXMgY2xvc2VzdCB0byBTIGJ1dCBub3QgZXF1YWwgdG8gUyAoaWYgdGhlcmUgYXJlIG11bHRpcGxlLCBsZXQgYW55IG9uZSBvZiB0aGVtIGJlIFApLjxcL2xpPlxyXG5cdDxsaT5UaGUgcGxheWVyJiMzOTtzIHNjb3JlIHdpbGwgYmUgfCBTIC0gUCB8ICh0aGUgYWJzb2x1dGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSB0d28pLjxcL2xpPlxyXG48XC9vbD5cclxuXHJcbjxwPkZvciBpbnN0YW5jZSwgbGV0IG4gPSBtID0gMyBhbmQgdiA9IFsxLCAyLCAzXS4gSW4gdGhpcyBjYXNlLCBldmVyeSBwbGF5ZXIgd291bGQgcmVjZWl2ZSZuYnNwO2V4YWN0bHkgb25lIGNhcmQuPFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+VGhlIHBsYXllciB3aXRoIHRoZSBjYXJkIG9mIDEgd291bGQgaGF2ZSBhIHNjb3JlIG9mIDEgKDIgaXMgdGhlIGNsb3Nlc3QgcHJpbWUgbnVtYmVyIHRvIDEpLjxcL2xpPlxyXG5cdDxsaT5UaGUgcGxheWVyIHdpdGggdGhlIGNhcmQgb2YgMiB3b3VsZCBoYXZlIGEgc2NvcmUgb2YgMSZuYnNwOygyIGlzIHRoZSBjbG9zZXN0IHByaW1lIG51bWJlciB0byAzKS48XC9saT5cclxuXHQ8bGk+VGhlIHBsYXllciB3aXRoIHRoZSBjYXJkIG9mIDMgd291bGQgaGF2ZSBhIHNjb3JlIG9mIDEgKDIgaXMgdGhlIGNsb3Nlc3QgcHJpbWUgbnVtYmVyIHRvJm5ic3A7MikuPFwvbGk+XHJcblx0PGxpPkluIHRoaXMgZXhhbXBsZSwgZXZlcnkgcGxheWVyJiMzOTtzIHNjb3JlIGlzIDEgKGhlbmNlIGFsbCBhcmUgd2lubmVycykuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+SW4gYW5vdGhlciBleGFtcGxlLCBsZXQgbiA9IDMsIG0gPSAyIGFuZCZuYnNwO3YgPSBbMjMsIDI5LCA0MV0uIEluIHRoaXMgY2FzZSwgb25lIHBsYXllciB3b3VsZCByZWNlaXZlIDEgY2FyZCBhbmQgdGhlIG90aGVyIDIgY2FyZHMuIFRoZXJlIGFyZSB0aHJlZSBkaWZmZXJlbnQgd2F5cyB0byBkaXN0cmlidXRlIHRoZSBjYXJkcy48XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5NZXRob2QgMTogUGxheWVycyBnZXQgWzIzXSBhbmQmbmJzcDtbMjksIDQxXSwgcmVzcGVjdGl2ZWx5LiBUaGUgY2xvc2VzdCBwcmltZSB0byAyMyBpcyAxOSBhbmQgdGhhdCB0byAoMjkrNDEpIGlzIDcxLiBIZW5jZSwgdGhlIHBsYXllciBzY29yZXMgYXJlIDQgYW5kIDEsIHJlc3BlY3RpdmVseS48XC9saT5cclxuXHQ8bGk+TWV0aG9kIDI6IFBsYXllcnMgZ2V0IFsyOV0gYW5kJm5ic3A7WzIzLCA0MV0sIHJlc3BlY3RpdmVseS4gVGhlIGNsb3Nlc3QgcHJpbWUgdG8gMjkmbmJzcDtpcyAzMSZuYnNwO2FuZCB0aGF0IHRvICgyMys0MSkgaXMgNjcuIEhlbmNlLCBib3RoIHBsYXllcnMmIzM5OyBzY29yZSBpcyAyLjxcL2xpPlxyXG5cdDxsaT5NZXRob2QgMzogUGxheWVycyBnZXQgWzQxXSBhbmQmbmJzcDtbMjMsIDI5XSwgcmVzcGVjdGl2ZWx5LiBUaGUgY2xvc2VzdCBwcmltZSB0byA0MSBpcyA0MyZuYnNwO2FuZCB0aGF0IHRvICgyMysyOSkgaXMgNTMuIEhlbmNlLCB0aGUgcGxheWVyIHNjb3JlcyBhcmUgMiBhbmQgMSwgcmVzcGVjdGl2ZWx5LjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlRvIG1ha2UgdGhlIGdhbWUgaW50ZXJlc3RpbmcsIEFsYmVydCB3YW50cyB0byBkaXN0cmlidXRlIHRoZSBjYXJkcyBpbiBhIHdheSB0aGF0IG1pbmltaXplcyB0aGUgd2lubmVyJiMzOTtzIHNjb3JlLiBJbiB0aGUgc2Vjb25kIGV4YW1wbGUgYWJvdmUsIHRoZSBhbnN3ZXIgaXMgMiBhcyB0aGUgd2lubmVyJiMzOTtzIHNjb3JlIGlzIG1pbmltaXplZCB3aGVuIE1ldGhvZCAyIG9yIE1ldGhvZCAzIGlzIHVzZWQuIEhlbHAgQWxiZXJ0IGNvbXB1dGUgdGhlIHNtYWxsZXN0IHBvc3NpYmxlJm5ic3A7c2NvcmUgb2YgdGhlIHdpbm5pbmcgcGxheWVyLjxcL3A+XHJcblxyXG48cD48ZW0+UHJpbWUgTnVtYmVyIChvciBqdXN0IFByaW1lKTogQSBwb3NpdGl2ZSBudW1iZXIgUCBpcyBhIHByaW1lIG51bWJlciBpZiBpdCBpcyBncmVhdGVyIHRoYW4gMSBhbmQgaXRzIG9ubHkgZGl2aXNvcnMgYXJlIDEgYW5kIGl0c2VsZi48XC9lbT48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBpbnB1dCB3aWxsIGNvbnRhaW4gYW4gaW50ZWdlciBULCB0aGUgbnVtYmVyIG9mIHRlc3QgY2FzZXMuPFwvcD5cclxuXHJcbjxwPkVhY2ggdGVzdCBjYXNlIHdpbGwgYmUgZ2l2ZW4gYnkgdHdvIGxpbmVzLiBUaGUgZmlyc3QgbGluZSB3aWxsIGNvbnRhaW4gbiBhbmQgbSwgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuIFRoZSBzZWNvbmQgbGluZSB3aWxsIGNvbnRhaW4gbiBpbnRlZ2VycyAodlsxXSwgLi4uLCB2W25dKSwgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+T3V0cHV0IHRoZSBhbnN3ZXIgZm9yIGVhY2ggdGVzdCBjYXNlIGluIGVhY2ggbGluZS48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIwIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJFbmdsaXNoIiwibGltaXQiOiI8dWw+XHJcblx0PGxpPjEgJmxlOyBUICZsZTsgNjxcL2xpPlxyXG5cdDxsaT4xICZsZTsgbSAmbGU7IG4gJmxlOyAxNTxcL2xpPlxyXG5cdDxsaT4xICZsZTsgdltpXSAmbGU7IDUsMDAwLDAwMDxcL2xpPlxyXG5cdDxsaT5UaGUgc3VtIG9mIGFsbCB2W2ldJiMzOTtzICZsZTsgNSwwMDAsMDAwPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJzYW1wbGVfZXhwbGFpbl8xIjoiPHA+Q2FzZSAxOiZuYnNwO0Rpc2N1c3NlZCBpbiB0aGUgcHJvYmxlbSBzdGF0ZW1lbnQuPFwvcD5cclxuXHJcbjxwPkNhc2UgMjombmJzcDtObyBleHBsYW5hdGlvbiBwcm92aWRlZC48XC9wPlxyXG5cclxuPHA+Q2FzZSAzOiZuYnNwO0Rpc2N1c3NlZCBpbiB0aGUgcHJvYmxlbSBzdGF0ZW1lbnQuPFwvcD5cclxuXHJcbjxwPkNhc2UgNDombmJzcDtObyBleHBsYW5hdGlvbiBwcm92aWRlZC48XC9wPlxyXG5cclxuPHA+Q2FzZSA1OiBGb3IgaW5zdGFuY2UsIG9uZSBwbGF5ZXIgaXMgZ2l2ZW4gWzEwLCAyMCwgMzAsIDUwXSBhbmQgdGhlIG90aGVyIFs0MF0gc3VjaCB0aGF0IGJvdGggcGxheWVycyBzY29yZSAxLjxcL3A+XHJcblxyXG48cD5DYXNlIDY6IEZvciBpbnN0YW5jZSwgcGxheWVycyBhcmUgZ2l2ZW4gWzEwXSwgWzQwXSwgYW5kIFsyMCwgMzAsIDUwXSBzdWNoIHRoYXQgZXZlcnkgcGxheWVyIHNjb3JlcyAxLjxcL3A+XHJcbiJ9XQ==

시간 제한

  • Java 8: 4 초
  • PyPy3: 20 초
  • Java 8 (OpenJDK): 4 초
  • Java 11: 4 초
  • Kotlin (JVM): 4 초
  • Java 15: 4 초