본문 바로가기
알고리즘

[백준/자바] #20207

by 룰루루 2025. 6. 8.

구현 문제를 풀어보았다. 

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        
        int N = Integer.parseInt(br.readLine());
        int[] schedules = new int[366];
        
        for(int i=0; i<N; i++) {
            String[] input = br.readLine().split(" ");
            int S = Integer.parseInt(input[0]);
            int E = Integer.parseInt(input[1]);

            for(int day=S; day<=E; day++) {
                schedules[day] += 1;
            }
        }

        int result = 0;
        int serialDays = 0;
        int maxScheduleCount = 0;
        for(int day=1; day<=365; day++) {
            if (schedules[day] != 0) {
                serialDays += 1;
                maxScheduleCount = Math.max(maxScheduleCount, schedules[day]);
            } else {
                result += serialDays * maxScheduleCount;
                serialDays = 0;
                maxScheduleCount = 0;
            }
        }

        result += serialDays * maxScheduleCount;

        bw.write(String.valueOf(result) + "\n");

        br.close();
        bw.flush();
        bw.close();

    }
}

'알고리즘' 카테고리의 다른 글

[백준/자바] #3079  (1) 2025.06.12
[백준/자바] #13549  (1) 2025.06.09
[백준/자바] #2294  (1) 2025.06.07
[백준/파이썬] #1477  (0) 2025.06.02
[백준/파이썬] #2412  (0) 2025.05.29