Skip to content

Commit 9e384e7

Browse files
authored
Merge pull request #33 from solid-connection/JAEHEE25
[Week03] BOJ 1477: 휴게소 세우기
2 parents 411879c + fae4349 commit 9e384e7

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
package week03.BOJ_1477_휴게소세우기;
2+
3+
import java.util.*;
4+
import java.lang.*;
5+
import java.io.*;
6+
7+
class BOJ1477 {
8+
public static void main(String[] args) throws IOException {
9+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
10+
StringTokenizer st = new StringTokenizer(br.readLine());
11+
int N = Integer.parseInt(st.nextToken());
12+
int M = Integer.parseInt(st.nextToken());
13+
int L = Integer.parseInt(st.nextToken());
14+
15+
int[] rests = new int[N + 2];
16+
rests[0] = 0;
17+
st = new StringTokenizer(br.readLine());
18+
for (int i = 0; i < N; i++) {
19+
rests[i] = Integer.parseInt(st.nextToken());
20+
}
21+
rests[N + 1] = L;
22+
Arrays.sort(rests); //정렬
23+
24+
int left = 1;
25+
int right = L - 1;
26+
27+
while (left <= right) {
28+
int mid = (left + right) / 2;
29+
int sum = 0;
30+
31+
for(int i = 1; i < rests.length; i++) {
32+
sum += (rests[i] - rests[i-1] - 1) / mid;
33+
}
34+
35+
if(sum > M) {
36+
left = mid + 1;
37+
} else {
38+
right = mid - 1;
39+
}
40+
}
41+
System.out.println(left);
42+
}
43+
}

0 commit comments

Comments
 (0)