반응형

 문제

 https://www.acmicpc.net/problem/7569


이전 토마토 문제와 거의 다르지 않다.

3차원배열을 만들어 높이도 넣어주면된다.

코드는 거의 동일하고 높이를 처리하는 부분만 추가하였다.


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
31
32
33
M,N,H=map(int,sys.stdin.readline().split())
tomatos=[]#
for _ in range(H):
    tomato=[]
    for _ in range(N):
        tmp=list(map(int,sys.stdin.readline().split()))
        tomato.append(tmp)
    tomatos.append(tomato)
 
 
 
 
ripen=[]#익은토마토
unripen=0
empty=0
for h in range(H):
    for i in range(N):#모든 익은 토마토 찾기
        for j in range(M):
            if tomatos[h][i][j]==1:#익은 토마토위치 모두저장
                ripen.append([h,i,j])
            elif tomatos[h][i][j]==0:#안익은 토마토 개수 체크
                unripen+=1
            elif tomatos[h][i][j]==-1:
                empty+=1
 
 
result=box(ripen,N,M,H,unripen,empty)
if result==0:
    print(0)
elif result==-1:
    print(-1)
else:
    print(result)

cs






반응형

'알고리즘(python) > 탐색' 카테고리의 다른 글

[Python]DFS와BFS 백준 2206  (0) 2020.02.15
[Python]DFS와BFS 백준 1697  (0) 2020.02.15
[Python]DFS와BFS 백준 7576  (0) 2020.02.14
[Python]DFS와BFS 백준 2178  (0) 2020.02.14
[Python]DFS와BFS 백준 1012  (0) 2020.02.13
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기