728x90
반응형

Dev/백준 2

백준 7576번 java 풀이 - bfs

풀이 이 문제는 여러 토마토가 동시에 익어가기 때문에 bfs 알고리즘을 통해 풀어야 합니다. 큐 자료구조에 토마토의 좌표값을 넣었기 때문에 Point 라이브러리를 사용하여 좌표값을 넣었습니다. http://cris.joongbu.ac.kr/course/java/api/java/awt/Point.html Point (Java 2 Platform SE 5.0) void translate (int dx, int dy) (x, y)의 위치에 있는 이 점을 x 축으로 따라 dx, y 축으로 따라 dy로 이동해, 점 (x + dx, y + dy)을 나타내도록 합니다. cris.joongbu.ac.kr array배열엔 해당 인덱스까지 소요된 시간을 저장하고 visit 배열엔 해당 인덱스를 방문했는지 유무를 boole..

Dev/백준 2022.12.29

백준 1697번 java 풀이 - bfs

풀이 이 문제는 bfs 알고리즘을 적용하여 풀면 쉽게 풀 수 있습니다. 큐와 배열을 이용하여 수빈이의 위치를 큐에 넣고 큐에서 값을 뽑을 때마다 갈 수 있는 위치(x-1, x+1,x*2)를 큐에 넣어주며 bfs함수를 다시 호출하는 방식으로 해결할 수 있습니다. 물론 시간을 줄이기 위해 boolean 배열을 사용하여 방문한 곳을 체크하는 조건을 추가할 수도 있습니다. 또한 이동 횟수(=시간)을 구해야 하기 때문에 배열을 하나 더 만들어 해당 인덱스까지 갈 때 소요되는 값을 저장해야 합니다. 코드 import java.util.*; import java.io.*; class Main{ static int[] array; static boolean[] bool; static int bro = 0; static..

Dev/백준 2022.12.27
728x90
반응형