티스토리 뷰

www.acmicpc.net/problem/2468

 

2468번: 안전 영역

재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다. 먼저 어떤 지역의 높이 정보를 파악한다. 그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는

www.acmicpc.net

import sys, copy
sys.setrecursionlimit(100000)


N = int(sys.stdin.readline())
s = [list(map(int, sys.stdin.readline().split())) for _ in range(N)]

for i in range(N):
  h = max(s[i])

result = 1
dx, dy = [-1, 1, 0, 0], [0, 0, -1, 1]

def dfs(x, y, tmp):
  tmp[x][y] = 0
  
  for i in range(4):
    nx, ny = x + dx[i], y + dy[i]

    if (0 <= nx < N) and (0 <= ny < N) and tmp[nx][ny] != 0:
      dfs(nx, ny, tmp)

for k in range(1, h+1):
  tmp = copy.deepcopy(s)
  cnt = 0

  for i in range(N):
    for j in range(N):
      if tmp[i][j] <= k:
        tmp[i][j] = 0
  
  for i in range(N):
    for j in range(N):
      if tmp[i][j] != 0:
        dfs(i, j, tmp)
        cnt += 1
  
  result = max(result, cnt)

print(result)
공지사항
최근에 올라온 글
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함