갱스타
갱스타의 블로그
갱스타
전체 방문자
오늘
어제
  • 분류 전체보기 (93)
    • TIL(Today I Learned) (10)
    • 노력만이 살길! (58)
      • 알고리즘 (29)
      • 네트워크 (3)
      • Python (1)
      • Spring Boot (1)
      • 합격하기 (0)
      • Adsp (3)
      • SQLD (10)
      • 데이터분석 (5)
      • 취업일기 (4)
      • IT 프로젝트 관리 (1)
      • 운영체제 (1)
    • Life (10)
      • 일상 그리고 리뷰 (10)
    • 기타 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Get
  • 싸피7기
  • 달팽이 반복문
  • 백준 달팽이
  • 싸피
  • 백준 알고리즘
  • mac 단축키
  • 백준 2477번
  • 백준
  • post
  • 통신
  • 달팽이문제
  • 백준 참외밭
  • 네트워크
  • SWEA 13038
  • swea
  • 싸피합격
  • SW Expert Academy
  • java 알고리즘
  • 알고리즘

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
갱스타

갱스타의 블로그

카테고리 없음

정올 냉장고

2022. 3. 1. 01:04


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Solution{
    static int count;

    static class Temperature implements Comparable<Temperature> {
        int start, end;
        public Temperature(int start, int end) {
            super();
            this.end = end;
            this.start = start;
        }
        //Comparable 인터페이스를 구현하여 시작시간을 기준으로 (오름차순) 비교하고, 시작시간이 같으면 종료시간 오름차순으로 정렬
        @Override
        public int compareTo(Temperature o) {
            return this.start != o.start ? this.start- o.start : this.end - o.end;
        }
    }
    public static void main(String[] args) throws IOException {
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb=new StringBuilder();
        StringTokenizer st=null;
        st=new StringTokenizer(br.readLine());
        int N=Integer.parseInt(st.nextToken());
        Temperature[] temperatures=new Temperature[N];

        for (int i = 0; i < N; i++) { //각 온도를 저장함.
            st=new StringTokenizer(br.readLine());
            temperatures[i]=new Temperature(Integer.parseInt(st.nextToken()),Integer.parseInt(st.nextToken()));

        }
        Calc(temperatures);
        System.out.println(count);

    }

    private static void Calc(Temperature[] temperatures) {
        //사용시간을 오름차순으로 정렬한다.
        Arrays.sort(temperatures);
        int s=temperatures[0].start;
        int e=temperatures[0].end;
        count=1;
        for (int i = 1; i < temperatures.length; i++) {
            //연속되어 있을 경우 갱신해주고
            if(e>=temperatures[i].start){
                if(e>temperatures[i].end){
                    e=temperatures[i].end;
                }
                s=temperatures[i].start;
                //아닐경우 긴 이용시간과 사용하지 않은 텀 계산
            }else{
                count++;
                s=temperatures[i].start;
                e=temperatures[i].end;

            }
        }


    }

}
    갱스타
    갱스타
    열심히 배워보자

    티스토리툴바