반응형

분류 전체보기 359

[백준 알고리즘] 9694번: 무엇을 아느냐가 아니라 누구를 아느냐가 문제다 (Python)

https://www.acmicpc.net/problem/9694 9694번: 무엇을 아느냐가 아니라 누구를 아느냐가 문제다 맨위 첫 번째 줄에 T(1 cur_dis + next_dis: min_dis[next_node] = cur_dis + next_dis pre_node[next_node] = cur_node # 역추적을 위해 이전경로 저장 hq.heappush(q,[cur_dis + next_dis, next_node]) return min_dis t = int(input()) for tc in range(1,t+1): n,m = map(int,input().split()) graph = [[] for _ in range(m)] pre_node = [0] * m for _ in range(n): x..

Algorithm/백준 2023.11.30

[백준 알고리즘] 9370번: 미확인 도착지 (Python)

https://www.acmicpc.net/problem/9370 9370번: 미확인 도착지 (취익)B100 요원, 요란한 옷차림을 한 서커스 예술가 한 쌍이 한 도시의 거리들을 이동하고 있다. 너의 임무는 그들이 어디로 가고 있는지 알아내는 것이다. 우리가 알아낸 것은 그들이 s지점에서 www.acmicpc.net 소스코드 import sys import heapq as hq input = sys.stdin.readline def dijkstra(start): q = [] min_dis = [int(1e9) for _ in range(n+1)] hq.heappush(q,[0,start]) min_dis[start] = 0 while q: cur_dis,cur_node = hq.heappop(q) if ..

Algorithm/백준 2023.11.30

[백준 알고리즘] 27008번: Checking an Alibi (Python)

https://www.acmicpc.net/problem/27008 27008번: Checking an Alibi A crime has been comitted: a load of grain has been taken from the barn by one of FJ's cows. FJ is trying to determine which of his C (1 ≤ C ≤ 100) cows is the culprit. Fortunately, a passing satellite took an image of his farm M (1 ≤ M ≤ 70000) se www.acmicpc.net 소스코드 import sys import heapq as hq input = sys.stdin.readline def dij..

Algorithm/백준 2023.11.28

[백준 알고리즘] 22116번: 창영이와 퇴근 (Python)

https://www.acmicpc.net/problem/22116 22116번: 창영이와 퇴근 A1,1에서 AN,N까지, 경로상의 최대 경사의 최솟값을 출력한다. www.acmicpc.net 소스코드 import sys import heapq as hq input = sys.stdin.readline nx = [-1,0,1,0] ny = [0,1,0,-1] def dijkstra(): q = [] hq.heappush(q,[0,0,0]) min_dis[0][0] = 0 while q: h,x,y = hq.heappop(q) if min_dis[x][y] < h: continue for i in range(4): xx = x + nx[i] yy = y + ny[i] if (0

Algorithm/백준 2023.11.28

[백준 알고리즘] 12834번: 주간 미팅 (Python)

https://www.acmicpc.net/problem/12834 12834번: 주간 미팅 첫째 줄에 KIST 기사단 팀원의 수 N, 장소의 수 V, 도로의 수 E가 주어진다. (N ≤ 100, V ≤ 1000, E ≤ 10000) 둘째 줄에 KIST의 위치 A와 씨알푸드의 위치 B가 주어진다. (1 ≤ A, B ≤ V) 셋째 줄에 팀원 N명의 www.acmicpc.net 소스코드 import sys import heapq as hq input = sys.stdin.readline def dijkstra(start): min_dis = [float("inf") for _ in range(v+1)] q =[] hq.heappush(q,[0,start]) min_dis[start] = 0 while q: ..

Algorithm/백준 2023.11.27

[백준 알고리즘] 5719번: 거의 최단 경로 (Python)

https://www.acmicpc.net/problem/5719 5719번: 거의 최단 경로 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 장소의 수 N (2 ≤ N ≤ 500)과 도로의 수 M (1 ≤ M ≤ 104)가 주어진다. 장소는 0부터 N-1번까지 번호가 매겨져 있 www.acmicpc.net 소스코드 import sys import heapq as hq from collections import deque input = sys.stdin.readline def dijkstra(): q = [] min_dis = [float('inf') for _ in range(n)] hq.heappush(q,[0,s]) min_dis[s] = 0 while q: cur..

Algorithm/백준 2023.11.27

[백준 알고리즘] 16681번: 등산 (Python)

https://www.acmicpc.net/problem/16681 16681번: 등산 첫 번째 줄에 지도에 표시된 지점의 개수, 지점을 잇는 경로의 개수, 주환이의 거리 비례 체력 소모량, 높이 비례 성취감 획득량을 나타내는 정수 N, M, D, E가 공백을 사이에 두고 주어진다. (2 ≤ www.acmicpc.net 소스코드 풀이 ★ 집에서 목표지점으로 갈 때와 목표지점에서 고려대학교로 갈 때의 조건이 달라서 처음엔 함수를 2개 만들어야하나 싶었습니다. 근데 조건을 보면 집과 고려대학교의 높이가 모두 1이기 때문에 역으로 생각해보면, 각각의 지점에서부터 목표까지 가는 방향의 높이는 모두 증가하기에 집 -> 목표 조건 성립, 목표 -> 고려대학교 조건이 성립합니다. ★ 그렇기에 다익스트라를 구현하면서 ..

Algorithm/백준 2023.11.22
반응형