DFS(12)
-
[알고리즘] 2583번: 영역 구하기
0. 문제 2583번: 영역 구하기 첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오 www.acmicpc.net 1. 문제 이해 100 * 100 배열을 그린다. K개의 직사각형을 그린다. for(첫번째 꼭짓점의 y ~ 두 번째 꼭짓점의 y) 안에 for(첫 번째 꼭짓점의 x ~ 두 번째 꼭짓점의 x) 이중 for문을 사용한다. 각각의 연결된 컴포넌트들의 넓이를 구해서 저장한다. dfs로 연결된 컴포넌트의 수를 센다. 2. 제출 가. 실패 // 백준 2583: 영역 구하기 #include #include #include using namesp..
2023.09.01 -
[알고리즘] 2468번: 안전 영역
0. 문제 2468번: 안전 영역 재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다. 먼저 어떤 지역의 높이 정보를 파악한다. 그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 www.acmicpc.net 1. 문제 이해 연결된 컴포넌트의 수가 최대가 되는 높이 값을 구하는 문제 최댓값을 구하기 위한 방법 → 모든 경우의 수를 실행하고 비교한다? 2. 제출 가. 실패 //백준 2468번: 안전 영역 #include #include using namespace std; const int max_n = 100; int n, max_h=0, ret=0; int a[max_n][max_n], visited[max_n][max_n]; int dy[] = {-1,0,1,..
2023.09.01 -
[알고리즘] 1012번: 유기농 배추
0. 문제 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 1. 문제 이해 주어진 맵에서 덩어리의 개수를 알아내면 된다. 이런 덩어리를 연결된 컴포넌트(connected component)라고 한다. 연결된 노드를 탐색한다. 그리고 배제한다. → DFS, BFS 사용. https://ko.wikipedia.org/wiki/플러드_필 2. 제출 가. a[][], visited[][]를 전역 변수로 선언 //백준 1012: 유기농 배추 #include #include // memeset using namespace std; ..
2023.08.31 -
[알고리즘] 그래프 이론 기초
0. 강의 2주차 이론 [알고리즘 강의] 2주차. 그래프이론, 인접행렬, 인접리스트, DFS, BFS, 트리순회 이번주차는 그래프이론과 DFS(깊이우선탐색), BFS(너비우선탐색) 그리고 트리순회인 preorder, inord... blog.naver.com 큰돌 선생님의 그래프이론과 DFS(깊이우선탐색), BFS(너비우선탐색) 그리고 트리순회인 preorder, inorder, postorder에 대한 블로그 포스팅. 이 글은 위에 내용을 다시 공부하기 싫어서 정리한 글입니다. [출처] [알고리즘 강의] 2주차. 그래프이론, 인접행렬, 인접리스트, DFS, BFS, 트리순회|작성자 큰돌 1. 그래프 가. 정점과 간선 그래프 : 정점과 간선들로 이루어진 집합. 정점(vertex)(V) : 노드라고도 불리..
2023.08.29