42587번: 프린터
programmers.co.kr/learn/courses/30/lessons/42587 코딩테스트 연습 - 프린터 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린 programmers.co.kr from collections import deque def solution(priorities, location): # queue: [(2, 0), (1, 1), (3, 2), (2, 3)] queue = deque((p, i) for i, p in enumerate(priorities)) print(queue) cnt = 0 while queue: cp, ci = queue...
기능개발 (스택/큐)
programmers.co.kr/learn/courses/30/lessons/42586?language=python3 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr import math def solution(progresses, speeds): # d (dev) : 7, 3, 9 # Q (deploy, cnt) : [[7, 2], [9, 1]] Q = [] for p, s in zip(progresses, speeds): d = math.ceil((100 - p) / s) if len(Q) == 0..
베스트앨범 (해시)
programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr def solution(genres, plays): # D: {'classic': [(500, 0), (150, 2), (800, 3)], 'pop': [(600, 1), (2500, 4)]} D = {g: [] for g in set(genres)} N = len(genres) for g, p, i in zip(genres, plays, range(N)): D[g].app..