목록Queue (2)
나의 개발일지
문제 : https://school.programmers.co.kr/learn/courses/30/lessons/42587 큐 파이썬 def solution(priorities, location): queue = [(i,p) for i,p in enumerate(priorities)] # 인덱스와 값 같이 저장 answer = 0 while True: cur = queue.pop(0) if any(cur[1] < q[1] for q in queue): # 큰 값이 하나라도 있으면 queue.append(cur) # 다시 추가 else: # 큰 값이 없으면 answer += 1 # 카운트 증가 (빼냄) if cur[0] == location: # 이게 타겟 값이면 return answer # 정답 리턴 자..
문제 : https://school.programmers.co.kr/learn/courses/30/lessons/118667 2022 KAKAO TECH INTERNSHIP 기출문제 문제 그대로 구현은 간단했는데 11번, 28번 테스트 케이스에서 계속 시간 초과가 뜸 큐의 길이가 30만 까지라서 큐의 길이가 너무 길 때 시간 초과가 뜬 줄 알았다... 원래 q1Sum, q2Sum 없이 while 문 안에서 sum(queue1) 처럼 sum함수를 계속 써서 비교를 했다. 하지만 시간 초과로 인해 시간을 줄이려고 sum 함수를 한 번씩만 사용하고 그 값에 더하고 빼는 방법을 사용 그래도 마찬가지로 11, 28번 테스트 케이스에서 시간 초과 몇 가지 테스트 케이스로 디버깅을 해보니 무한 루프가 도는 상황이 발..