백준 3

이분 그래프

https://www.acmicpc.net/problem/1707처음에 지문 읽고 이해가 안돼서 (ㅠㅠ) 구글에서 이미지 봤다자료구조 시간에 배웠던 건데 구현해보는 건 처음이다그냥 번갈아서 색 칠하고 겹치면 Out 시키면 되는 거 같다그러면 dfs bfs 중 하나 쓰면 될 듯하다 import sysfrom collections import dequeinput = sys.stdin.readlinetk = int(input())def bfs(x): q = deque() q.append(x) vis[x] = "W" while q: cx = q.popleft() for nx in g[cx]: if vis[nx] == "0": ..

Dev/Algorithm 2024.10.16

장군 (BFS)

https://www.acmicpc.net/problem/16509  일반적이지만 살짝 귀찮은 bfs 문제다저렇게 뛰는 친구들은 knight prob 비슷한 결로 아주 많이 나오고거기에 visited 할 때마다 이전 노드 방문값 ++ 해주는 방법도 아주 쉽다import sysfrom collections import dequeinput = sys.stdin.readlinen1, m1 = map(int, input().split())# 상 우 하 좌dir = [[-2, -3], [2, -3], [3, -2], [3, 2], [2, 3], [-2, 3], [-3, 2], [-3, -2]]nodir = [ [[0, -1], [-1, -1]], [[0, -1], [1, -1]], [[1, 0],..

카테고리 없음 2024.10.15

가장 가까운 공통 조상

https://www.acmicpc.net/problem/3584조금 쉬운 문제다두 노드에서 공통된 가장 가까운 부모를 찾는 문제setrecursionlimit을 안 걸어줬다가 recursionerror로 몇번 반려당했다import syssys.setrecursionlimit(100000)input = sys.stdin.readlinetk = int(input())def find_parent(x, res, depth): res.append((x, depth)) if len(tree[x]) == 0: return for i in tree[x]: find_parent(i, res, depth + 1)for _ in range(tk): n = int(input()..

Dev/Algorithm 2024.10.15