2025/03/27 4

[정글/회고] 2주차 회고

2주차 퀴즈를 치고 내 자신에 대해 실망했고 너무 속상했다.처음부터 우울한 소리를 한 것 같은데..! 지금은 괜찮다. 내 공부 방식이 잘못 된 것을 알았으니 다음 주부터 고치기로 했다. 다른 동료들의 답안과 비교해보니 내 답안이 너무 구체적이지 않았다.보면 아는 지식이었지만 백지 시험을 쳤을 때 스스로 서술형으로 적어내지 못하는 상태였다.공부한 지식들을 그냥 흘려보내지 말고 진짜 내 것으로 만드는 연습을 해야겠다. 그리고 1번 문제는 해시, 해시 충돌의 개념을 묻는 문제였는데 나는 퀴즈를 치기 전까지 백준 문제를 푸는 데 급급해서 큐, 해시, 힙의 개념을 아직 보지도 않은 상태였다. 그래서 1번을 쓰지 못했다. 현재 아는 데까지만 적어서 제출했어야 했는데 그런 노력도 하지 않았다. 왜 그랬는지 모르겠는데..

정글/회고 2025.03.27

[파이썬] PriorityQueue, heapq

큐 관련 파이썬의 모듈PriorityQueue데이터를 추가한 순서대로 제거(FIFO, 선입 선출)되지 않음우선순위가 가장 작은 값 부터 제거됨 -> 내부적으로 데이터를 정렬된 상태로 보관한다는 의미, heap 모듈로 구현되어 있음from queue import PriorityQueueque = PriorityQueue(maxsize=8)que.put(4) # 원소 추가que.get() # 원소 삭제que.put((3, 'apple')) # (우선순위, 값)의 튜플 형태로 데이터를 넣으면 우선순위 기준으로 데이터가 정렬됨que.get()[1] # 값 반환 heapq 최소 힙(min heap) 형태가 유지되는 자료구조 -> 가장 작은 값은 언제나 인덱스 0 (이진트리의 root)에 위치함, 부모 노드는 항상..

정글/알고리즘 2025.03.27

[정글/시험] 2주차 시험 회고

이번 시험은 쉽게 나온 편이라고 하셨다.나도 풀면서 많이 어렵게 느껴지지는 않았다.다만 큐 라이브러리 사용하는 연습을 안 해서 라이브러리 임포트하고 함수 사용하는 데 시간을 많이 썼던 것 같다.1. 숫자 카드https://www.acmicpc.net/problem/10815문제 의도는 이분 탐색이지만 set으로 풀어도 되는 문제이다.해시함수를 이용해서 각 값의 인덱스를 구한 후 그 곳에 저장하면 O(1)의 속도로 접근할 수 있다.import sysn = int(sys.stdin.readline())arr1 = list(map(int, sys.stdin.readline().split()))m = int(sys.stdin.readline())arr2 = list(map(int, sys.stdin.readli..

정글/알고리즘 2025.03.27

[백준/Python] 13334번 : 철로

문제https://www.acmicpc.net/problem/13334풀이 그림 순서:1 3 52 4 현재 철로 범위 내에 가장 많은 (시작점, 끝점) 범위가 포함되려면 끝점을 기준으로 검사해야 한다. 코드import sys, heapqn = int(sys.stdin.readline())office = []for _ in range(n): start, end = map(int, input().split()) if start>end: start, end = end, start heapq.heappush(office, (end, start)) # (우선순위, 값) -> 종료 시간 기준으로 최소힙 정렬d = int(sys.stdin.readline()) # 고려할 구간의 길이pos..

정글/알고리즘 2025.03.27