[백준/BOJ] - 2589번 python 풀이 - BFS
Key Point 1. 각 case 마다 visited의 초기값을 사용해야하기 때문에 bfs 접근할 때 마다 deepcopy 해준다. 2. 시작점의 visited 값은 1로 설정해준다.( 0으로 설정할 경우 시작점으로 다시 되돌아갈 수 있기 때문이다.) import sys import copy input = sys.stdin.readline from collections import deque n, m = map(int,input().split()) mapp = [list(map(str, input().rstrip())) for _ in range(n)] visited = [[0 for _ in range(m)] for _ in range(n)] dx, dy = (-1, 1, 0, 0), (0, 0, -..
2022. 12. 22.
[백준/BOJ] - 2178번 python 풀이 - BFS
Key Point 1. 최단거리를 구하는 문제는 bfs가 적절하다. 2. 시작 노드로 부터 한 다리 건너 있는 노드들의 값을 +1 씩 더해주어 최종 노드 위치의 값을 확인한다. import sys from collections import deque input = sys.stdin.readline n, m = map(int,input().split()) # 한줄에 배열을 받을 수 있는 방법 arr = [list(map(int,input().rstrip())) for _ in range(n)] dx, dy = (-1, 1, 0, 0), (0 ,0 ,- 1, 1) def bfs(a,b): q = deque() q.append((a,b)) while q: x, y = q.popleft() for i in ra..
2022. 12. 20.