본문 바로가기

Algorithm(CodeTree, Python)/DFS5

[코드트리] 뿌요뿌요 Python # n 입력 n = int(input()) # grid grid = [ list(map(int, input().split())) for _ in range(n) ] # in_range(x, y) def in_range(x, y): return 0 = 4: # bomb_cnt 올려주고 bomb_cnt += 1 # max_block update max_block = max(max_block, curr_cnt) # 출력 print(bomb_cnt, max_block) 2023. 2. 27.
[코드트리] 안전 지대 Python # n, m 입력 n, m = map(int, input().split()) # towns towns = [ list(map(int, input().split())) for _ in range(n) ] # in_range(x, y) def in_range(x, y): return 0 h: # curr_safe_area 올려주고 curr_safe_area += 1 # 방문처리 후 visited[i][j] = True # dfs dfs(i, j) # curr_safe_area가 max_safe_area보다 크면 if curr_safe_area > max_safe_area: # k, max_safe_area k, max_safe_area = h, curr_safe_area try: print(k, max_sa.. 2023. 2. 27.
[코드트리] 마을 구분하기 Python # n 입력 n = int(input()) # towns 입력 towns = [ list(map(int, input().split())) for _ in range(n) ] # in_range(x, y) def in_range(x, y): return 0 2023. 2. 27.
[코드트리] 두 방향 탈출 가능 여부 판별하기 Python # n, m 입력 n, m = map(int, input().split()) # maze maze = [ list(map(int, input().split())) for _ in range(n) ] # in_range(x, y) def in_range(x, y): return 0 2023. 2. 27.
[코드트리] 그래프 탐색 Python # n, m 입력 n, m = map(int, input().split()) # graph graph = [ [0] * (n+1) for _ in range(n+1) ] # x, y 입력 for _ in range(m): x, y = map(int, input().split()) graph[x][y] = 1 graph[y][x] = 1 # dfs(vertex) def dfs(vertex): # 전역 변수 선언 global ans for curr_v in range(1, n+1): # 이어져 있고, 방문한 적 없으면 if graph[vertex][curr_v] and not visited[curr_v]: # 정답 올려주고 ans += 1 # 방문 처리후 visited[curr_v] = True # 재귀호출.. 2023. 2. 27.