시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 128 MB 618 58 56 15.094%

문제

정수 집합 S가 주어졌을때, 다음 조건을 만족하는 구간 [A, B]를 좋은 구간이라고 한다.

  • A와 B는 양의 정수이고, A < B를 만족한다.
  • A ≤ x ≤ B를 만족하는 모든 정수 x가 집합 S에 속하지 않는다.

정수 x를 포함하는 좋은 구간의 개수가 정수 y를 포함하는 좋은 구간의 개수보다 작으면 x는 y보다 더 좋다고 한다. x와 y를 포함하는 좋은 구간의 개수가 같거나, 구간의 개수가 둘 다 무한대와 같은 경우, 작은 수를 더 좋다고 한다.

집합 S가 주어지고, 이를 이용해 전체 정수를 더 좋은 수가 앞으로 오게 정렬했다고 가정하자. 앞에 오는 수 n개를 구해보자.

입력

첫째 줄에 집합 S의 크기 L이 주어진다. 둘째 줄에는 집합에 포함된 정수가 주어진다. 셋째 줄에는 n이 주어진다.

출력

상위 N개의 수를 공백으로 구분해 출력한다.

제한

  • 1 ≤ L ≤ 50
  • 집합 S에는 중복되는 정수가 없다.
  • 집합 S에 포함된 모든 정수는 1보다 크거나 같고, 1,000,000,000보다 작거나 같다.
  • 1 ≤ n ≤ 100

예제 입력 1

1
3
6

예제 출력 1

3 1 2 4 5 6

예제 입력 2

3
5 11 18
9

예제 출력 2

5 11 18 1 4 6 10 2 3

예제 입력 3

3
7 13 18
9

예제 출력 3

7 13 18 14 17 8 12 1 6

예제 입력 4

5
1000 1004 4000 4003 5000
19

예제 출력 4

1000 1004 4000 4003 5000 4001 4002 1001 1003 1002 4004 4999 1 999 4005 4998 2 998 4006

예제 입력 5

1
1000000000
8

예제 출력 5

1000000000 1 999999999 2 999999998 3 999999997 4

출처