Jin's Library

[Gold Ⅴ] 1931 - 회의실 배정 본문

Algorithm - Java/BOJ - Gold

[Gold Ⅴ] 1931 - 회의실 배정

Linkin 2025. 10. 17. 14:50
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
import java.util.Arrays;
public class BOJ_1931 {
    public static void main(String[] args) throws Exception{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine());
        int s = 0, e = 0, cnt = 0, last = 0;
        int[][] meeting = new int[N][2];

        for(int i=0;i<N;i++){
            StringTokenizer st = new StringTokenizer(br.readLine());
            s = Integer.parseInt(st.nextToken());
            e = Integer.parseInt(st.nextToken());
            meeting[i][0] = s;
            meeting[i][1] = e;
        }

        Arrays.sort(meeting, (a, b) -> {
            if (a[1] != b[1]) return a[1] - b[1]; // 종료 시간 기준
            else return a[0] - b[0];              // 종료 시간이 같으면 시작 시간 기준
        });

        for(int i = 0; i < N ; i++){
            if(meeting[i][0] >= last){
                cnt++;
                last = meeting[i][1];
            }
        }
        // System.out.println(Arrays.deepToString(meeting));
        System.out.println(cnt);
    }
}

'Algorithm - Java > BOJ - Gold' 카테고리의 다른 글

[Gold Ⅴ] 12865 - 평범한 배낭  (0) 2025.10.20
[Gold Ⅳ] 2293 - 동전 1  (0) 2025.10.20
[Gold Ⅳ] 1043 - 거짓말  (0) 2025.10.02
[Gold Ⅱ] 10775 - 공항  (0) 2025.10.01
[Gold Ⅴ] 1717 - 집합의 표현  (0) 2025.10.01