토마토

코딩 테스트

(Java) 백준 7569 - 토마토

7576 문제에서 높이인 H값이 추가된 문제이다. x,y 값에 z값까지 더해 탐색하면 된다. 3차원 배열을 생성해 입력값을 배열에 넣어주었고 dz 배열을 생성해 상하좌우앞뒤를 모두 탐색할수 있게 했다. 최종 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Main { static int m, n, h; static int arr[][][]; static int[] dx = {1,-1,0,0,0,0}; static int[] dy = {0,0,1,-1,0,0..

코딩 테스트

(Java) 백준 7576 - 토마토

전형적인 BFS 문제라고 생각했다. 그러나 푸는데 정말 시간이 오래 걸렸다. 처음에는 입력값을 배열에 넣고 1을 발견할 때마다 bfs를 실행시키려고 했다. 그런데 밑에 테스트 케이스를 만나면 6이 아닌 9를 반환하게 된다. 6 4 1 -1 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 -1 1 문제에서 요구하는 방향은 모든 익은 토마토에서 하루가 지날 때마다 주변에 토마토가 익는 방식인데 나는 첫번째 익은 토마토를 발견하면 bfs를 실행시키고 또 다른 익은 토마토를 발견하면 또 bfs를 실행시켜 결국 똑같은 값이 두 번 출력되는 것이었다. 그래서 bfs에 넘기는 입력값을 List로 설정해 모든 익은 토마토 인덱스를 한 번에 bfs 메서드에 넘겨주었다. 큐에 모든 익은 토마토의..

로승리
'토마토' 태그의 글 목록