본문 바로가기

dfs3

1012번 유기농 배추(python3) https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net bfs나 dfs를 적용해주면 되는데, 이때 bfs나 dfs를 적용할 수 있는 칸을 만나게 되면 count 변수를 1 증가시켜주는 방법으로 유기농배추 모임의 수를 구할 수 있다. from collections import deque T = int(input()) dx = [1, -1, 0, 0] dy = [0, 0, 1, -1] def bfs(): m, n, k = map(int, input().split()).. 2022. 1. 30.
2606번 바이러스(python3) https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net dfs나 bfs를 적용하면 되는 문제다. 그래프의 연결된 것이 단방향이 아니라 양방향이라는 점을 인지해야 한다. N = int(input()) M = int(input()) graph = [[] for _ in range(N + 1)] for i in range(M): x, y = map(int, input().split()) graph[x].append(y) graph[y].append(x) visi.. 2022. 1. 30.
16234번 인구 이동(python3) https://www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net dfs, bfs알고리즘 문제다. 내 풀이코드는 다음과 같다. 찾아보니 다른 사람들은 bfs를 많이 적용했는데, 나는 dfs를 연습하는 김에 dfs를 사용했다. import sys sys.setrecursionlimit(10**6) N, L, R = map(int, input().split()) data = [] for i in range(N): data.append(list(map(.. 2022. 1. 23.