가장 먼 가까운 집 1


답안 제출

Points: 6
시간 제한: 2.0s
메모리 제한: 1G

문제 유형

일직선 위에 집들이 있다. 각 집의 위치는 정수로 주어진다.

두 집 사이의 거리는 두 위치의 차이의 절댓값이다.

어떤 집에서 가까운 집이라고 부르기 위해서는 두 집 사이의 거리가 \(K\) 이하여야 한다. 각 집마다, 가까운 집들 중에서 가장 먼 집까지의 거리를 구하라.

가까운 다른 집이 없다면 그 집의 답은 -1이다.

입력

첫째 줄에 집의 개수 \(N\)과 거리 제한 \(K\)가 공백으로 구분되어 주어진다.

둘째 줄에 집의 위치 \(N\)개가 공백으로 구분되어 주어진다.

출력

입력으로 주어진 집의 순서대로, 각 집의 답을 공백으로 구분하여 한 줄에 출력한다.

각 집의 답은 거리 차이가 \(K\) 이하인 다른 집들 중 가장 먼 집까지의 거리이다. 조건을 만족하는 다른 집이 없다면 -1을 출력한다.

제한 사항

  • \(2 \le N \le 100\)
  • \(1 \le K \le 1,000,000,000\)
  • 집의 위치는 \(1\) 이상 \(1,000,000,000\) 이하의 정수이다.
  • 같은 위치에 있는 집은 없다.
  • 집의 위치는 정렬되어 있지 않을 수 있다.

예제 입력 1

6 6
1 3 7 9 13 20

예제 출력 1

6 6 6 6 6 -1

첫 번째 집의 위치는 1이다. 거리 제한 안에 있는 집은 위치 3과 7의 집이고, 그중 가장 먼 거리는 6이다.

마지막 집의 위치는 20이다. 거리 제한 안에 있는 다른 집이 없으므로 답은 -1이다.

예제 입력 2

5 4
10 1 6 14 3

예제 출력 2

4 2 4 4 3

코멘트

현재 작성된 코멘트가 없습니다.