목록그래프 (37)
정화 코딩

08-4. 다익스트라 056. 최단경로 (백준 1753번) https://www.acmicpc.net/problem/1753 from sys import stdin from queue import PriorityQueue import sys v, e = map(int, stdin.readline().split()) g = [[] for _ in range(v+1)] dst = [sys.maxsize] * (v+1) visited = [False] * (v+1) que = PriorityQueue() start = int(stdin.readline()) dst[start] = 0 que.put((0, start)) for _ in range(e): a, b, c = map(int, stdin.readlin..

A. 여러분의 다리가 되어 드리겠습니다! (백준 17352번) https://www.acmicpc.net/problem/17352 #python from sys import stdin import sys sys.setrecursionlimit(100000) def find(a): if parent[a] == a: return a else: parent[a] = find(parent[a]) return parent[a] def union(a, b): a = find(a) b = find(b) if a != b: parent[b] = a n = int(stdin.readline()) parent = [i for i in range(n+1)] for _ in range(n-2): a, b = map(int, ..

08-2. 유니온 파인드 050. 집합의 표현 (백준 1717번) https://www.acmicpc.net/problem/1717 from sys import stdin def find(a): if parent[a] == a: return a else: parent[a] = find(parent[a]) return parent[a] def union(a, b): a = find(a) b = find(b) if a != b: parent[b] = a n, m = map(int, stdin.readline().split()) parent = [i for i in range(n+1)] for _ in range(m): x, a, b = map(int, stdin.readline().split()) if x ..

08-1. 그래프의 표현 046. 특정 거리의 도시 찾기 (백준 18352번) https://www.acmicpc.net/problem/18352 from sys import stdin from collections import deque n, m, k, x = map(int, stdin.readline().split()) g = [[] for _ in range(n+1)] visited = [-1] * (n+1) ans = [] def bfs(v): que = deque() que.append(v) visited[v] += 1 while que: new = que.popleft() for x in g[new]: if visited[x] == -1: que.append(x) visited[x] = vis..

05-1. 깊이 우선 탐색 023. 연결 요소의 개수 (백준 11724번) https://www.acmicpc.net/problem/11724 from sys import stdin import sys sys.setrecursionlimit(10000) n, m = map(int, stdin.readline().split()) data = [[] for i in range(n)] visited = [False] * n def DFS(v): visited[v] = True for i in data[v]: if not visited[i-1]: DFS(i-1) for i in range(m): a, b = map(int, stdin.readline().split()) data[a-1].append(b) dat..