https://school.programmers.co.kr/learn/courses/30/lessons/17680 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제설명DB 캐시를 적용할 때 캐시 크기에 따른 실행 시간 측정 프로그램 작성LRU(Least Recently Used) 방법 사용 문제해결현재 값이 캐시 리스트 안에 있으면현재 값 제거 후 맨 끝에 append, 실행시간+1현재 값이 캐시 리스트 안에 없으면꽉 찾으면 : popleft, append, 실행시간 + 5비었으면 : append, 실행시간 + 5def solution(cacheSize, cities): from collecti..
https://school.programmers.co.kr/learn/courses/30/lessons/118670 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr1. 문제설명행렬이 주어질 때 operations (Rotate, ShiftRow)를 순서대로 실행한 후 행렬의 결과 반환 2. 문제해결[첫번째 코드]def solution(rc, operations): from collections import deque new_rc = deque([]) for r in rc: new_rc.append(deque(r)) row_len = len(rc) for op..
https://school.programmers.co.kr/learn/courses/30/lessons/92343 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 문제설명2진 트리 모양 초원에서 각 노드를 돌아다니며 양 모으기각 노드는 양과 늑대로 구성모은 양의 수보다 늑대의 수가 같거나 더 많아지면 모든 양 잡아먹힘중간에 양이 늑대에게 잡아먹히지 않으면서 다시 루트 노드로 돌아올 때, 최대 몇마리의 양을 모을 수 있는지 ? 2. 문제해결edges에서 하나의 edge는 부모-자식 노드의 연결을 의미한다.현재 노드에서 연결된 노드들을 방문할 수 있을 뿐만 아니라 이전 부모노드에 연결된 자식노드에도 방..
https://school.programmers.co.kr/learn/courses/30/lessons/118667 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 문제설명두 개의 큐가 주어질 때, 각 큐의 합이 같도록 만들기 위한 최소 이동 횟수 구하기한 번의 pop과 한 번의 insert를 합쳐서 1회 수행 2. 문제해결def solution(queue1, queue2): from collections import deque queue1 = deque(queue1) queue2 = deque(queue2) cur1 = sum(queue1) cur2 = sum(queu..
https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 문제설명단품 메뉴들을 조합해서 코스요리 형태로 재구성하기메뉴 주문시 가장 많이 함께 주문한 단품메뉴들을 선택단, 최소 2가지 이상의 단품메뉴로 구성 / 최소 2명 이상의 손님으로부터 주문된 것 단품메뉴 조합에 대해서만 후보에 포함 2. 코드구현def solution(orders, course): # 'XA'와 'AX'가 다르게 카운트 되는 것 방지 for i in range(len(orders)): orders[..