반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- '0'
- function_template
- 예제
- Algorithm
- 구현
- Critical_Path_Analysis
- sstream
- class_template
- 백준
- qsort
- list
- data_structure
- 문법
- 자료구조
- 알고리즘
- Articulation_Point
- template
- sort
- Biconnected_Component
- deletion
- 5397
- c++
- 13305
- 총정리
- Pair
- STL
- Heap
- singly Linked List
- red-black tree
- connected_component
Archives
- Today
- Total
- Today
- Total
- 방명록
어제의 나보다 성장한 오늘의 나
[C++][BFS / DFS] 백준 10451번 문제 풀이 본문
반응형

문제

◎ 저는 이 문제를 adjacent matrix를 만들고 DFS로 탐색하며 문제를 해결하였습니다.
Code
cpp
닫기// BaekJoon 10451
// Title : 순열 사이클
// URL : https://www.acmicpc.net/problem/10451
#include <iostream>
#include <vector>
using namespace std;
// DFS recursion
void DFS(vector<vector<bool>> &arr ,vector<bool> &check ,int i){
check[i-1] = true;
for(int j = 1 ; j <= check.size(); ++j){
if(arr[i-1][j-1] == true && check[j-1] == false) DFS(arr,check, j );
}
}
int main(int argc , char** argv){
int T , N , temp;
cin >> T;
while(T--){
int cnt = 0; // answer
cin >> N;
vector<vector<bool>> arr(N , vector<bool>(N , false)); // adj matrix
vector<bool> check ( N , false ); // check list
for(int i = 1 ; i <= N ; ++i){
cin >> temp;
arr[i-1][temp - 1] = true;
arr[temp-1][i-1] = true;
}
for(int i = 1 ; i <= N ; ++i){
if(check[i-1] == false){
DFS(arr , check, i ); // DFS or BFS
cnt++;
}
}
cout << cnt << endl;
}
}
https://www.acmicpc.net/problem/10451
10451번: 순열 사이클
1부터 N까지 정수 N개로 이루어진 순열을 나타내는 방법은 여러 가지가 있다. 예를 들어, 8개의 수로 이루어진 순열 (3, 2, 7, 8, 1, 4, 5, 6)을 배열을 이용해 표현하면 \(\begin{pmatrix} 1 & 2 &3&4&5&6&7&8 \\ 3
www.acmicpc.net
반응형
'c++ > 백준 문제 풀이' 카테고리의 다른 글
[C++] [BFS / DFS] 백준 2331 번 문제 풀이 (0) | 2022.08.19 |
---|---|
[C++][BFS / DFS] 백준 2606번 문제 풀이 (0) | 2022.08.19 |
[C++][자료구조 Stack] 백준 10828번 문제 풀이 (0) | 2022.07.24 |
[C++] 백준 5397번 풀이 (0) | 2022.07.24 |
[C++][집합 / 자료구조] 백준 1717번 풀이 및 설명 (0) | 2022.07.01 |
Comments