백준 1325번: 효율적인 해킹 [JAVA]
·
개발/코딩테스트
https://www.acmicpc.net/problem/1325
백준 12851번: 숨바꼭질2 [JAVA]
·
개발/코딩테스트
https://www.acmicpc.net/problem/12851 12851번: 숨바꼭질 2 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 www.acmicpc.net ** 1697번 숨바꼭질에서 이어짐 ** 풀이 기존 숨바꼭질과 동일하게 BFS를 이용하여 동생을 찾는다. 하지만 동생을 찾을 경우 카운트만 증가시키고 종료하지 않는다. 또한 이미 방문한 점이어도 최단 소요 시간보다 오래 걸리지 않는다면 다시 방문할 수 있다. 코드 import java.io.BufferedReader; import java.io.IOExcept..
백준 1697번: 숨바꼭질 [JAVA]
·
개발/코딩테스트
https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 풀이 기준점에서 +1, -1, *2 된 점까지 가는 시간은 1초이다. 그래프의 인접 노드라고 생각할 수 있는 것이다. 따라서 BFS를 이용하여 1초 걸리는 지점을 방문 → 또 그 지점을 기준으로 1초 걸리는 지점을 방문을 반복하다 보면 각 점까지 도달하는 최소 시간을 찾아낼 수 있다. 동생의 위치인 K에 도달하면 반복을 멈추고 걸린 시간을 출력한다. 코드 import j..
백준 2638번: 치즈 [JAVA]
·
개발/코딩테스트
https://www.acmicpc.net/problem/2638 2638번: 치즈 첫째 줄에는 모눈종이의 크기를 나타내는 두 개의 정수 N, M (5 ≤ N, M ≤ 100)이 주어진다. 그 다음 N개의 줄에는 모눈종이 위의 격자에 치즈가 있는 부분은 1로 표시되고, 치즈가 없는 부분은 0으로 www.acmicpc.net * 풀이 가장 바깥의 공간부터 사방을 탐색한다. 주변에 빈 공간이 있다면 다음 공간도 탐색하고 치즈를 만난다면 체크만 한다. 치즈를 두 번 만난 경우 표시를 0으로 바꿔 치즈를 없앤다. 이 반복을 치즈가 모두 사라질 때까지 반복하고 반복한 횟수를 출력한다. * 코드 import java.io.BufferedReader; import java.io.IOException; import j..