728x90
https://www.acmicpc.net/problem/1911
객체를 생성하여 ArrayList에 담고, 시작번호로 정렬해준다!
그리고 널빤지 크기만큼 더해서 널빤지가 필요한 위치를 구분한다.
간단하게 해결~!
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.StringTokenizer;
public class Main {
static class Dot implements Comparable<Dot>{
int x, y;
Dot(int x, int y) {
this.x = x;
this.y = y;
}
@Override
public int compareTo(Dot d) {
return this.x-d.y;
}
}
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int l = Integer.parseInt(st.nextToken());
ArrayList<Dot> list = new ArrayList<>();
int result = 0;
int now = 0;
for (int i = 0; i < n; i++) {
st = new StringTokenizer(br.readLine());
int x = Integer.parseInt(st.nextToken());
int y = Integer.parseInt(st.nextToken());
list.add(new Dot(x, y));
}
Collections.sort(list);
for (int i = 0; i < list.size(); i++) {
Dot d = list.get(i);
int x = d.x;
int y = d.y;
for (int j = x; j < y; j++) {
if (now < j) {
result++;
now =j+l-1;
}
}
}
System.out.println(result);
}
}
'Java' 카테고리의 다른 글
[백준 2468] 안전 영역 (JAVA) (0) | 2023.04.19 |
---|---|
[백준 2410] 2의 멱수의 합 (JAVA) (1) | 2023.04.18 |
[백준 1965] 상자넣기 (JAVA) (0) | 2023.04.18 |
[백준 9465] 스티커 (JAVA) (0) | 2023.04.17 |
[백준 1890] 점프 (JAVA) (0) | 2023.04.17 |