목록너비 우선 탐색 (25)
-
# 주소 https://www.acmicpc.net/problem/2589 2589번: 보물섬 보물섬 지도를 발견한 후크 선장은 보물을 찾아나섰다. 보물섬 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 각 칸은 육지(L)나 바다(W)로 표시되어 있다. 이 지도에서 www.acmicpc.net # 문제 # 문제 해설 및 코드 리뷰 import java.awt.*; import java.util.*; public class Main{ static int n, m; static int[][] arr; static int[] dx = {1,0,0,-1}; static int[] dy = {0,-1,1,0}; static boolean[][] visit; public static void..
# 주소 https://www.acmicpc.net/problem/1520 1520번: 내리막 길 여행을 떠난 세준이는 지도를 하나 구하였다. 이 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 한 칸은 한 지점을 나타내는데 각 칸에는 그 지점의 높이가 쓰여 있으 www.acmicpc.net # 문제 # 문제 해설 및 코드 리뷰 import java.awt.*; import java.util.*; public class Main { static int n,m; static int dx[] = {1,0,0,-1}; static int dy[] = {0,1,-1,0}; static int[][] visit; static int arr[][]; static int count = 0; p..
# 주소 https://www.acmicpc.net/problem/1707 1707번: 이분 그래프 입력은 여러 개의 테스트 케이스로 구성되어 있는데, 첫째 줄에 테스트 케이스의 개수 K가 주어진다. 각 테스트 케이스의 첫째 줄에는 그래프의 정점의 개수 V와 간선의 개수 E가 빈 칸을 사이에 www.acmicpc.net # 문제 # 문제 해설 및 코드 리뷰 import java.util.*; public class Main { static int testcase,node,v; static int arr[]; static List list[]; public static void main(String[] args){ Scanner scan = new Scanner(System.in); testcase = s..
# 주소 https://www.acmicpc.net/problem/1987 1987번: 알파벳 세로 R칸, 가로 C칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 (1행 1열) 에는 말이 놓여 있다. 말은 상하좌우로 인접한 네 칸 중의 한 칸으 www.acmicpc.net # 문제 # 문제 해설 및 코드 리뷰 import java.awt.*; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; public class Main { static int n,m; static char[][] arr; stat..
# 주소 https://www.acmicpc.net/problem/2644 2644번: 촌수계산 사람들은 1, 2, 3, …, n (1 ≤ n ≤ 100)의 연속된 번호로 각각 표시된다. 입력 파일의 첫째 줄에는 전체 사람의 수 n이 주어지고, 둘째 줄에는 촌수를 계산해야 하는 서로 다른 두 사람의 번호가 주어 www.acmicpc.net # 문제 # 문제 해설 및 코드 리뷰 import java.awt.*; import java.util.LinkedList; import java.util.Scanner; public class Main { static int node; static int n,m,k; static int[][] arr; static boolean[]visit; static int[] d..
# 주소 https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net # 문제 # 문제 해설 및 코드 리뷰 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; pub..