알고리즘/백준
[백준] 1012번 유기농 배추 (파이썬)
알감자
2022. 1. 4. 20:20
1012번: 유기농 배추
차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에
www.acmicpc.net
코드
import sys
sys.setrecursionlimit(10**6)
T = int(input())
def start():
m, n, k = map(int, input().split())
tree = list([0 for _ in range(m)] for _ in range(n))
answer = []
for _ in range(k):
x, y = map(int, input().split())
tree[y][x] = 1
dx = [1,-1,0,0]
dy = [0,0,1,-1]
def dfs(tree, cnt, x, y):
tree[x][y] = 0
for i in range(4):
n_x = x + dx[i]
n_y = y + dy[i]
if 0 <= n_x < n and 0 <= n_y < m:
if tree[n_x][n_y] == 1:
cnt = dfs(tree, cnt+1, n_x, n_y)
return cnt
for i in range(n):
for j in range(m):
if tree[i][j] == 1:
answer.append(dfs(tree,1,i,j))
print(len(answer))
for _ in range(T):
start()