본문 바로가기

DFS5

[BOJ 11725번] 트리의 부모 찾기(JAVA) www.acmicpc.net/problem/11725 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net import java.io.*; import java.util.*; class Main{ static BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); static BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out)); static boolean[] isVisit; static int[][] arr; static int[.. 2020. 10. 9.
[BOJ 1012번] 유기농 배추(C++) www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 � www.acmicpc.net #include int arr[52][52] = { 0 }; void dfs(int x, int y) { arr[y][x] = 0; if (arr[y][x+1] == 1) dfs(x + 1, y); if (arr[y][x - 1] == 1) dfs(x - 1, y); if (arr[y+1][x] == 1) dfs(x, y + 1); if (arr[y-1][x] == 1) dfs(x, y - 1); } int main(v.. 2020. 9. 21.
[BOJ 2667번] 단지번호붙이기(C++) www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집들의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. � www.acmicpc.net #include #include int arr[27][27] = { 0 }; int arr2[100] = { 0 }; int n = 0; void dfs(int x, int y) { arr[y][x] = 0; if (arr[y][x+1] == 1) dfs(x + 1, y); if (arr[y][x - 1] == 1) dfs(x - 1, y); if (arr[y+1][x] == 1) dfs(x, y + 1); i.. 2020. 9. 18.
[BOJ 1260번] DFS와 BFS(C++) www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net #include #include #include #include using namespace std; #define MAX 1001 bool visit[MAX]; vector arr[MAX]; queue q; void DFS(int x) { visit[x] = true; printf("%d ", x); for (int i : arr[x]) { if (!visit[i]) { .. 2020. 9. 17.