1976번

· 백준
유니온 파인드 코드#include #include #include #include using namespace std;int n,m,a,b,c,lst[203],road[1003],temp;bool ok = true;set st;int find(int x) { if(x == lst[x]) return x; return lst[x] = find(lst[x]);}void merge(int x, int y) { x = find(x); y = find(y); if(x > y) lst[x] = y; else lst[y] = x;}int main() { cin >> n; cin >> m; for(int i = 1; i > temp; if(temp == 1) { merge(i,j)..
· 백준
코드 # 최단거리 X, 연결되어있는지 확인 # 집합에 속해 있는지 확인하는 과정 # 유니온-파인드 이용 import sys sys.setrecursionlimit(10**5) input = sys.stdin.readline n = int(input()) m = int(input()) node = [i for i in range(n+1)] # 부모 노드 def find(a, parent): if a != parent[a]: # 루트 노드가 아니면 parent[a] = find(parent[a], parent) # 루트 노드 찾기 return parent[a] def union(a,b,parent): a = find(a, parent) b = find(b, parent) if a < b: # 루트 노드가 작..