[BOJ 32069] 가로등
View as PDF
Submit solution
Points:
3
Time limit:
2.0s
Memory limit:
1G
Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text
수직선 도로 위에 $N$ 개의 가로등이 켜져 있다. 각 가로등의 위치는 왼쪽부터 차례대로 $A_1 < \cdots < A_N$로 나타낼 수 있다.</p>
위치 $x$의 어두운 정도를, 그 위치로부터 가장 가까운 가로등까지의 거리로 정의하자. 이는 $N$ 개의 수 $| A_1 - x |, \cdots, | A_N - x |$ 중에서 가장 작은 값과 같다. 여기서, $| \cdot |$는 절댓값 기호로, $y \ge 0$이면 $|y| := y$, $y < 0$이면 $|y| := -y$이다.
예를 들어, $N = 3$ 개의 가로등이 차례대로 $A_1 = 1$, $A_2 = 4$, $A_3 = 8$에 위치한다면, $0$부터 $10$까지 각 정수 위치의 어두운 정도는 다음과 같다.
| 위치 | $0$ | $1$ | $2$ | $3$ | $4$ | $5$ | $6$ | $7$ | $8$ | $9$ | $10$ |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 어두운 정도 | $1$ | $0$ | $1$ | $1$ | $0$ | $1$ | $2$ | $1$ | $0$ | $1$ | $2$ |
| 가로등이 있는가? | ○ | ○ | ○ |
$x = 0$부터 $x = L$까지 $L+1$ 개의 정수 위치의 어두운 정도를 모두 계산했을 때, 가장 작은 값부터 $K$ 번째로 작은 값까지 차례대로 출력하는 프로그램을 작성하라.
입력 형식
첫 줄에 세 정수 $L$, $N$, $K$가 공백으로 구분되어 차례대로 주어진다.</p>
그다음 줄에 $N$ 개의 정수 $A_1, \cdots, A_N$이 공백으로 구분되어 차례대로 주어진다.
출력 형식
첫 줄부터 $K$ 개의 줄에 걸쳐 답을 출력한다. 이 중 $i$ 번째 줄에는 $i$ 번째로 작은 어두운 정도의 값을 출력한다.
예제 입력 1
10 3 4
1 4 8
예제 출력 1
0
0
0
1
예제 입력 2
4 5 5
0 1 2 3 4
예제 출력 2
0
0
0
0
0
예제 입력 3
7 1 4
3
예제 출력 3
0
1
1
2
예제 입력 4
9 4 10
0 3 6 9
예제 출력 4
0
0
0
0
1
1
1
1
1
1
Comments