이 영역을 누르면 첫 페이지로 이동
쿄코코 블로그의 첫 페이지로 이동

쿄코코

페이지 맨 위로 올라가기

쿄코코

얼레벌레 생활🤯

99클럽 코테 스터디 19일차 TIL - 그리디 (백준1374 - 강의실)

  • 2024.11.15 22:05
  • Python/😈 99클럽 코테 스터디 4기 TIL
    반응형

    https://www.acmicpc.net/problem/1374

    • 오늘의 학습 키워드 : 그리디
    • 문제 설명
    시작한 시간으로 정렬
    [3, 2, 14],
    [1, 3, 8],
    [8, 6, 27],
    [5, 6, 20],
    [2, 7, 13],
    [4, 12, 18],
    [6, 15, 21],
    [7, 20, 25]
    강의실 1 2 ~ 14 20 ~ 25
    강의실 2 3 ~ 8 12 ~ 18
    강의실 3 6 ~ 27  
    강의실 4 6~20   
    강의실 5  7 ~ 13 15 ~ 21
    1. 정렬 : 강의의 시작 시간을 기준으로 오름차순 정렬
    2. 우선순위 큐(힙) 활용: 각 강의실의 가장 빠른 종료 시간을 추적

    3-1. 강의 시작 시간 ≥ 가장 빠른 종료 시간 기존 강의실 재사용 (heappop)
    -> 강의 종료 시간 추가(heappush)
    새 강의가 이전 강의 이후에 시작 가능
    3-2. 강의 시작 시간 < 가장 빠른 종료 시간 새 강의실 추가 (heappush) 새 강의가 기존 강의실에서 시작 불가
    • 공부한 내용 
      import sys
      import heapq
      
      N= int(sys.stdin.readline().strip())
      classes = [tuple(map(int, input().split())) for _ in range(N)]
      
      # 2. 강의 시작 시간 기준 정렬
      classes.sort(key=lambda x: x[1])
      
      # 3. 최소 힙 생성
      heap = [classes[0][2]]
      
      # 4. 강의실 배정
      for _, start, end in classes[1:]:
          if heap[0] <= start:  # 기존 강의실 사용 가능
              heapq.heappop(heap)
          heapq.heappush(heap, end)
      
      # 5. 최소 강의실 수 출력
      print(len(heap))
    • 오늘의 회고
      • 오늘은 이해가 되지만 먼가 풀이가 그렇게 바로 떠오르지 않아서 좀 고민했던 시간이였달까?
      • 정렬을 해서 사용하고 먼가 문제는 이해되는데 이걸 어찌 풀어야 잘 풀었다고 소문날까~ 이런느낌으로 고민하는 시간이었다.

     



    반응형

    'Python > 😈 99클럽 코테 스터디 4기 TIL' 카테고리의 다른 글

    99클럽 코테 스터디 21일차 TIL - 완점탐색 (프로그래머스- 카펫)  (0) 2024.11.18
    99클럽 코테 스터디 20일차 TIL - 완점탐색 (프로그래머스- 모의고사)  (1) 2024.11.16
    99클럽 코테 스터디 17일차 TIL - 그리디 (백준31926 - 밤양갱)  (1) 2024.11.13
    99클럽 코테 스터디 16일차 TIL - 그리디 (백준2847 - 게임을 만든 동준이)  (2) 2024.11.12
    99클럽 코테 스터디 15일차 TIL - 그리디 (백준13417 - 카드 문자열)  (2) 2024.11.11

    댓글

    이 글 공유하기

    • 구독하기

      구독하기

    • 카카오톡

      카카오톡

    • 라인

      라인

    • 트위터

      트위터

    • Facebook

      Facebook

    • 카카오스토리

      카카오스토리

    • 밴드

      밴드

    • 네이버 블로그

      네이버 블로그

    • Pocket

      Pocket

    • Evernote

      Evernote

    다른 글

    • 99클럽 코테 스터디 21일차 TIL - 완점탐색 (프로그래머스- 카펫)

      99클럽 코테 스터디 21일차 TIL - 완점탐색 (프로그래머스- 카펫)

      2024.11.18
    • 99클럽 코테 스터디 20일차 TIL - 완점탐색 (프로그래머스- 모의고사)

      99클럽 코테 스터디 20일차 TIL - 완점탐색 (프로그래머스- 모의고사)

      2024.11.16
    • 99클럽 코테 스터디 17일차 TIL - 그리디 (백준31926 - 밤양갱)

      99클럽 코테 스터디 17일차 TIL - 그리디 (백준31926 - 밤양갱)

      2024.11.13
    • 99클럽 코테 스터디 16일차 TIL - 그리디 (백준2847 - 게임을 만든 동준이)

      99클럽 코테 스터디 16일차 TIL - 그리디 (백준2847 - 게임을 만든 동준이)

      2024.11.12
    다른 글 더 둘러보기

    정보

    쿄코코 블로그의 첫 페이지로 이동

    쿄코코

    • 쿄코코의 첫 페이지로 이동

    검색

    메뉴

    • 홈

    카테고리

    • 분류 전체보기 (168)
      • Python (24)
        • 😈 99클럽 코테 스터디 4기 TIL (23)
        • 궁금한거 정리 (1)
      • SQL (16)
        • HackerRank (15)
      • [백준] Python,Java로 풀기📖 (71)
        • 정렬(Sorting) (6)
        • 그리디 (5)
        • 문자열 (7)
        • 수학 (3)
        • DFS&BFS (10)
        • 구현 (4)
        • 다이나믹 (17)
        • 이분탐색 (1)
        • 자료구조 (10)
        • 최단거리 (5)
        • 인덱스트리 (0)
      • [프로그래머스]Python,Java로 풀기 (6)
        • Level 1 (4)
        • Level 2 (2)
      • Study Platform📚 (25)
        • (운영체제) - 블로그 및 강의 참고 (0)
        • 김영한👨🏻‍🏫의 스프링 부트와 JPA 실무 완전 .. (5)
        • (알고리즘)- [이코테] 이것이 코딩테스트다 정리 (10)
        • 그림으로 배우는 Http&Network Basic (10)
      • 까먹을까봐 적는 것들 (4)
      • 테스트 보고 난 후..🤔 (0)
      • kt 에이블스쿨 (18)

    최근 글

    인기 글

    댓글

    공지사항

    아카이브

    태그

    • 항해99
    • 백준
    • 99클럽
    • 티스토리챌린지
    • 프로그래머스
    • 코딩테스트준비
    • 오블완
    • TiL

    나의 외부 링크

    정보

    쿄코코의 쿄코코

    쿄코코

    쿄코코

    블로그 구독하기

    • 구독하기
    • RSS 피드

    방문자

    • 전체 방문자
    • 오늘
    • 어제

    티스토리

    • 티스토리 홈
    • 이 블로그 관리하기
    • 글쓰기
    Powered by Tistory / Kakao. © 쿄코코. Designed by Fraccino.

    티스토리툴바