본문 바로가기

DFS7

백준 7562 나이트의 이동(JAVA) - BFS 백준 7562번 https://www.acmicpc.net/problem/7562 7562번: 나이트의 이동 체스판 위에 한 나이트가 놓여져 있다. 나이트가 한 번에 이동할 수 있는 칸은 아래 그림에 나와있다. 나이트가 이동하려고 하는 칸이 주어진다. 나이트는 몇 번 움직이면 이 칸으로 이동할 수 www.acmicpc.net 문제설명 체스판에서 나이트 (위의 그림처럼 대각선으로 이동가능함)가 몇번만에 이동가능한지 알아내는 문제 체스판의 변의 길이가 주어지고, 초기위치와 도착위치를 입력받는다. 접근 BFS로 접근 ( 기본이 상하좌우 라면 이 문제는 좌표를 각각 대각선에 맞춰 설정) 코드 import java.io.BufferedReader; import java.io.IOException; import j.. 2023. 3. 25.
백준 1697번 숨바꼭질(JAVA) - BFS 백준 1697번 https://www.acmicpc.net/problem/1697 1697번: 숨바꼭질 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 문제설명 x+1, x-1 , x*2로 움직이는 좌표를 계산해서 BFS 접근 BFS로 접근 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; .. 2023. 3. 24.
백준 4963번 섬의 개수(JAVA) - DFS 백준 4963번 https://www.acmicpc.net/problem/4963 4963번: 섬의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 지도의 너비 w와 높이 h가 주어진다. w와 h는 50보다 작거나 같은 양의 정수이다. 둘째 줄부터 h개 줄에는 지도 www.acmicpc.net 문제설명 지도의 크기를 입력받고, 1(땅), 0(바다) 로 구분지어진 값들을 입력받아 섬의 개수를 세는 프로그램 작성. 섬이란 가로, 세로 또는 대각선 까지 연결되어있는 사각형을 말한다. 지도의 크기 0, 0 을 입력받으면 종료. 접근 1. 지도의 크기 w,h를 입력 받고 지도를 초기화 하면서 방문여부인 visit도 초기화 해준다. 2. 입력받은 w,h를 통해 0,1을 입력 .. 2023. 2. 19.