목록2024/04 (18)
Binaryseop
https://www.acmicpc.net/problem/2667 접근DFS 또는 BFS를 이용하여 각 단지 내에 있는 집의 수를 구하고 리스트에 추가합니다. 그리고 오름차순으로 정렬하면 문제를 해결할 수 있습니다. 코드import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.ArrayList;import java.util.Collections;public class Main { static int n, count; static int[][] map; static boolean[][] visited; // 상, 하, 좌, 우 static int[] dr = { -1, 1, 0, 0 }; static int[] dc = ..
https://www.acmicpc.net/problem/2606 접근BFS 또는 DFS를 이용하여 바이러스에 걸리게 되는 컴퓨터의 수를 구할 수 있습니다. 1번 노드를 시작으로 인접한 노드를 우선적으로 탐색하는 것이 효율적이라고 판단하여 BFS를 사용했습니다. 코드import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.ArrayDeque;import java.util.Queue;import java.util.StringTokenizer;public class Main { static int n, m; static boolean[][] graph; public static void main(String[] args) ..
https://www.acmicpc.net/problem/2178 접근(1, 1)에서 출발하여 (n, m) 위치로 이동할 때 지나야 하는 최소의 칸 수를 구하기 위해서는 BFS를 이용하여 문제를 해결할 수 있습니다. 코드import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.ArrayDeque;import java.util.Queue;import java.util.StringTokenizer;class Position { int r, c; Position(int r, int c) { this.r = r; this.c = c; }}public class Main { static int n, m; static int[..
https://www.acmicpc.net/problem/1260 접근DFS와 BFS를 구현할 줄 아는지 체크할 수 있는 문제입니다. 재귀를 이용해서 DFS를 구하고 Queue를 이용해서 BFS를 구현하면 문제를 해결할 수 있습니다. 코드import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.ArrayDeque;import java.util.Arrays;import java.util.Queue;import java.util.StringTokenizer;public class Main { static int n, m, v; static boolean[] visited; static boolean[][] graph; st..