본문 바로가기

분류 전체보기121

[백준 11000번] 강의실 배정 문제 풀이 (with Python) 먼저 수업 시간을 입력한 후, 수업 시간 시작 시간으로 정렬을 해준다. heapq를 이용하면 입력 순서에 상관없이 오름차순으로 정렬해주므로, heapq에 수업 종료 시간을 넣고 비교하는 방식으로 구현했다. 즉, heapq[0] 은 배정된 강의실 중 가장 빨리 끝나는 시간으로 다음 수업시간과 비교하여 더 빨리 끝나면, 해당 수업을 heapq에서 빼고 다음 수업시간의 끝나는 시간을 넣음으로서 하나의 강의실을 이어서 사용한다. 반대로, 다음 수업 시간보다 늦게 끝나는 경우, 새로운 강의실을 배정해야 하므로, 다음 수업 시간의 끝나는 시간을 heapq에 넣어준다. import sys import heapq input = sys.stdin.readline .. 2023. 11. 4.
[9~10 주차] 프로젝트 진행 과정 (ESS 전력 분배 모니터링 서비스) 9주차. ESS 전력 분배 모니터링 서비스 : ESS 배터리 시스템은 전력 가격이 저렴할 때, 배터리를 충전시키고, 효율적으로 에너지를 전달하는 방식이다. 전력 분배 시, 오른쪽 그림과 같이 왼쪽 BUS와 오른쪽 BUS에 따로 데이터를 로드해준다. 현재 ESS 전력 분배 모니터링을 구현하기 위해 SSE 를 연결하여 30 초마다 현재 데이터를 클라이언트에게 보내주도록 설계했다. 우리 조는 3개의 아파트 동 전력 분배 데이터를 가지고 있어, 3동 (a_bus, b_bus, c_bus) 의 전력 분배 현황을 보여준다. 0 : 어느 쪽도 전력이 분배되지 않은 상태 1 : BUS1에 전력이 분배된 상태 2 : BUS2에 전력이 분배된 상태 10주차. 동별/ 층별 전력 소비량 모니터링 서비스 다른 백엔드 조원이 짠.. 2023. 11. 3.
[2023-10-29 ~ 2023-11-04] 공부 계획 우테코 프리코스 2주차 과제 완료하기 리눅스 마스터 시험보기 코딩테스트 준비하기 캡스톤 ESS 모니터링 API 구현하기 2023. 10. 29.
[백준 21609번] 상어 중학교 문제 풀이 먼저 문제를 이해해보자. 블록 그룹은 연결된 블록의 집합이다. 그룹에는 일반 블록이 적어도 하나 있어야 하며, 일반 블록의 색은 모두 같아야 한다. 검은색 블록은 포함되면 안 되고, 무지개 블록은 얼마나 들어있든 상관없다. 그룹에 속한 블록의 개수는 2보다 크거나 같아야 하며, 임의의 한 블록에서 그룹에 속한 인접한 칸으로 이동해서 그룹에 속한 다른 모든 칸으로 이동할 수 있어야 한다. 블록 그룹의 기준 블록은 무지개 블록이 아닌 블록 중에서 행의 번호가 가장 작은 블록, 그러한 블록이 여러개면 열의 번호가 가장 작은 블록이다. → 블록 그룹의 구성 블록 : 일반 블록 1개이상(단, 색은 모두 같아야 함) / 검은색 블록 X, 무지개 블록 개수 상관 없음 → 블록의.. 2023. 10. 29.