inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

BFS 토마토

177

kyyy

작성한 질문수 3

0

혹시 토마토 상자가 3차원 배열인 경우에는 어떤식으로 이동할 지 알 수 있을까요? 

이동 좌표는 아래와 같은데 층 이동을 어떻게 하는지 모르겠습니다.

총 2층인 3차원 배열 중 만약 익은 토마토가 있는 곳에서 시작되는 층이 0층인 경우 -1층을 할수가 있는건가요?ㅠ 

그리고 만약 0층에서 1층으로 올라갈 경우 좌표가 어디서 시작하는지도 궁금합니다. 

dx=[-1,0,1,0,0,0] :행

dy=[0,1,0,-1,0,0] :열

hh=[0,0,0,0,-1,1] : 높이

이것저것 자료를 찾아봐도 명확하게 알기가 어려워 그림으로 간단하게 알려주실수 있으신지 문의드립니다..

입력값은 아래와 같습니다. 

5=가로 3=세로 2=높이
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 1 0 0
0 0 0 0 0

python 코테 준비 같이 해요!

답변 1

1

김태원

안녕하세요^^

백준 7569번 소스입니다.

import sys
from collections import deque
m,n,h = map(int,input().split()) # mn크기, h상자수
graph = []
queue = deque([])
 
for i in range(h):
    tmp = []
    for j in range(n):
        tmp.append(list(map(int,sys.stdin.readline().split())))
        for k in range(m):
            if tmp[j][k]==1:
                queue.append([i,j,k])
    graph.append(tmp)
    
dx = [-1,1,0,0,0,0]
dy = [0,0,1,-1,0,0]
dz = [0,0,0,0,1,-1]
while(queue):
    x,y,z = queue.popleft()
    
    for i in range(6):
        a = x+dx[i]
        b = y+dy[i]
        c = z+dz[i]
        if 0<=a<and 0<=b<and 0<=c<and graph[a][b][c]==0:
            queue.append([a,b,c])
            graph[a][b][c] = graph[x][y][z]+1
            
day = 0
for i in graph:
    for j in i:
        for k in j:
            if k==0:
                print(-1)
                exit(0)
        day = max(day,max(j))
print(day-1)

기존에 윈도우 10으로 잘 써왔는데 윈도우 11로 바꾸고 나서 채점이 안됩니다.

1

104

2

스택에서 ')'을 만나는 경우

0

113

3

문제가 어디있나요?

0

87

2

변수 or 함수명

0

81

1

침몰하는 타이타닉 문제 질문입니다

0

72

1

AA.py 책점 에러

0

65

1

오늘 구매했는데 파이썬 자료구조 궁금한거 있으면 답변이 잘 될까요.

0

117

2

5.동전분배하기 문제 밑에코드도 정답이될까요?

0

118

1

아나그램 비교 코드

0

126

2

AA.PY파일 복사 후 채점 진행할때 오류 발생합니다.

0

164

2

문제 링크가있나여?

0

155

2

채점기 Time Limit Exceeded 오류 문의

1

183

2

동적계획법은 사용하는 문제

0

135

2

제 코드 좀 봐주세요

0

155

1

예외가 존재할 가능성?

0

100

1

3번이 안풀립니다

0

99

0

5번 틀림

0

125

0

오류원인?

0

106

0

리스트 선언

0

117

1

침몰하는 타이타닉(그리디) 문제 질문

0

115

1

알고리즘

0

75

1

코딩테스트

0

98

1

DFS 순서 질문드립니다.

0

139

2

left, right를 사용한 풀이법에 대한 질문입니다

0

103

1