[스택] 프로그래머스 L2 '주식가격' (Python)
https://programmers.co.kr/learn/courses/30/lessons/42584 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr prices의 길이만큼 시간이 지남 스택으로 사용할 타이머 생성 #1차시도 : 2,3,4,5,6,7,8,9,10 & 효율성테스트 실패 def solution(prices): stack = [0] answer = [0] * len(prices) for i in range(1,len(prices)): if prices[i] ..
[Dijkstra] 프로그래머스 L2 '배달' (Python)
https://programmers.co.kr/learn/courses/30/lessons/12978 코딩테스트 연습 - 배달 5 [[1,2,1],[2,3,3],[5,2,2],[1,4,2],[5,3,1],[5,4,2]] 3 4 6 [[1,2,1],[1,3,2],[2,3,2],[3,4,3],[3,5,2],[3,5,3],[5,6,1]] 4 4 programmers.co.kr 1번 노드에서 가장 멀리 떨어진 노드의 개수를 구해야 하므로 다익스트라 알고리즘을 이용 간선은 양방향이므로 그래프에 노드를 서로 추가 K 시간 이하로 배달이 가능해야 하므로 비용이 3 이하인 노드 개수를 찾아야 함 import heapq def dikjstra(start,distance,graph): q = [] heapq.heappus..
[Dijkstra] 프로그래머스 L3 '가장 먼 노드' (Python)
https://programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr 1번 노드에서 가장 멀리 떨어진 노드의 개수를 구해야 하므로 다익스트라 알고리즘을 이용 간선은 양방향이므로 그래프에 노드를 서로 추가 가장 멀리 떨어진 노드를 구해야 하므로 max() 메서드 이용 import heapq def dijkstra(start,distance,graph): q=[] heapq.heappush(q,(0,start)) distance[start]=0 while q: dist,now = heapq.heappop..