ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 강의실 배정
    코딩테스트/softeer 2023. 9. 10. 17:34

    https://softeer.ai/practice/info.do?idx=1&eid=392 

     

    Softeer

    연습문제를 담을 Set을 선택해주세요. 취소 확인

    softeer.ai

    답안

    import java.util.*;
    import java.io.*;
    
    
    public class Main
    {
        public static void main(String args[]) throws IOException
        {
            BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
            int n = Integer.parseInt(in.readLine());
            ArrayList<Reservation> list = new ArrayList<Reservation>();
    
            for (int i = 0; i < n; i++){
                StringTokenizer st = new StringTokenizer(in.readLine());
                int startTime = Integer.parseInt(st.nextToken());
                int endTime = Integer.parseInt(st.nextToken());
                list.add(new Reservation(startTime, endTime));
            }
            Collections.sort(list);
    
            int result = 0;
            int lastTime = 0;
    
            for (Reservation reservation: list){
                if (reservation.startTime >= lastTime){
                    result++;
                    lastTime = reservation.endTime;
                }
            }
            System.out.println(result);
        }
    
        public static class Reservation implements Comparable<Reservation>{
            int startTime, endTime;
    
            public Reservation(int startTime, int endTime){
                this.startTime = startTime;
                this.endTime = endTime;
            }
    
            public int compareTo(Reservation reservation){
                return this.endTime - reservation.endTime;
            }
        }
    }

    느낀점

    난 무슨 각 예약 별 diff 도 구해서 비교해야되나싶어서.. 별 뻘짓을 다햇는데

    이런 케이스에서는 끝나는시간기준으로 정렬해서 하나씩 넣으면 된단다..

    정확하게 이해는 못했지만 테스트케이스를 작성해보면  정말 끝나는 시간 기준으로 정렬을 하면 어느정도 맞는것같다.

    (예외 케이스는 못찾음)

     

    '코딩테스트 > softeer' 카테고리의 다른 글

    순서대로 방문하기  (0) 2023.09.10
    자동차 테스트  (0) 2023.09.10
    회의실 예약(java)  (0) 2023.09.04
    바이러스(java)  (0) 2023.09.04
    GBC(java)  (0) 2023.09.04
Designed by Tistory.