https://www.acmicpc.net/problem/19598
🌕 최종코드
import java.io.*;
import java.util.*;
public class Main {
public static int N,K;
public static Node[] node;
public static int answer =0 ;
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
N = Integer.parseInt(st.nextToken());
node = new Node[N];
for(int i=0;i<N;i++) {
st = new StringTokenizer(br.readLine());
int startTime = Integer.parseInt(st.nextToken());
int endTime =Integer.parseInt(st.nextToken());
node[i] = new Node(startTime, endTime);
}
Arrays.sort(node);
PriorityQueue<Integer> pq = new PriorityQueue<Integer>();
pq.offer(node[0].endTime);
for(int i=1;i<N;i++) {
if(pq.peek() <= node[i].startTime) {
pq.poll();
}
pq.add(node[i].endTime);
}
System.out.println(pq.size());
}
}
class Node implements Comparable<Node>{
int startTime;
int endTime;
public Node(int startTime, int endTime) {
this.startTime = startTime;
this.endTime = endTime;
}
@Override
public int compareTo(Node other) {
if(this.startTime == other.startTime)
return this.endTime - other.endTime;
return this.startTime - other.startTime;
}
}
'항해' 카테고리의 다른 글
[DAY57] 99클럽 코딩테스트 JAVA 백준 가장 긴 증가하는 부분 수열 11053번 (0) | 2025.02.18 |
---|---|
[DAY56] 99클럽 코딩테스트 JAVA 백준 피보나치수열 1003번 (1) | 2025.02.17 |
[DAY54] 99클럽 코딩테스트 JAVA 백준 신입사원 1946번 (0) | 2025.02.14 |
[DAY53] 99클럽 코딩테스트 JAVA 백준 맥주 축제 17503번 (0) | 2025.02.12 |
[DAY52] 99클럽 코딩테스트 JAVA 백준 ATM 11399번 (0) | 2025.02.12 |