์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 | 31 |
- ๊ตฌํ
- ๋ฐฑ์ค
- ํ๋ก๊ทธ๋๋จธ์ค
- ๊ทธ๋ํํ์
- ๊ทธ๋ฆฌ๋
- ์ฐ์ ์์ํ
- ๋ณํฉ์ ๋ ฌ
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- SQL
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์์ํ์
- ์ ๋ ฌ
- ๋์ ํฉ
- db
- ๋จธ์ง์ํธ
- ํ์ด์ฌ
- ๊ทธ๋ํ
- ์์๊ตฌํ๊ธฐ
- ์๋ฃ๊ตฌ์กฐ
- DP
- ์ํ
- ๋ค์ด๋๋ฏนํ๋ก๊ทธ๋๋ฐ
- ์๊ณ ๋ฆฌ์ฆ
- ๋๋น์ฐ์ ํ์
- ๋์ ๊ณํ๋ฒ
- BFS
- ๊น์ด์ฐ์ ํ์
- ์ค๋ธ์
- LIS
- DFS
๐๐ญ๐ฐ๐ธ ๐ฃ๐ถ๐ต ๐ด๐ต๐ฆ๐ข๐ฅ๐บ
[๋ฐฑ์ค] 11724๋ฒ: ์ฐ๊ฒฐ ์์์ ๊ฐ์ - C++ ๋ณธ๋ฌธ
[๋ฐฑ์ค] 11724๋ฒ: ์ฐ๊ฒฐ ์์์ ๊ฐ์ - C++
.23 2021. 12. 22. 22:03๋ฌธ์
๋ฐฉํฅ ์๋ ๊ทธ๋ํ๊ฐ ์ฃผ์ด์ก์ ๋, ์ฐ๊ฒฐ ์์ (Connected Component)์ ๊ฐ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์ ์ ์ ๊ฐ์ N๊ณผ ๊ฐ์ ์ ๊ฐ์ M์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) ๋์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์ ๊ฐ์ ์ ์ ๋์ u์ v๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ u, v ≤ N, u ≠ v) ๊ฐ์ ๊ฐ์ ์ ํ ๋ฒ๋ง ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ์ฐ๊ฒฐ ์์์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค.
๊ทธ๋ํ ํ์ ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํ์ฌ ํธ๋ ๋ฌธ์ .
DFS๋ฅผ ์ฌ์ฉํ์ฌ ํ์๋ค. 0๋ฒ ์ ์ ๋ถํฐ N๊น์ง ํ๋ฒ์ฉ DFS๋ฅผ ์คํํ๋, DFS์์ ์๋ก ์ ์ ์ ๋ฐฉ๋ฌธํ ๋ ๋ง๋ค c๋ฅผ 1์ฉ ์ฆ๊ฐ์์ผ ๋ฐฉ๋ฌธํ ๋ ธ๋์ ์๋ฅผ ์ธ์ฃผ๊ณ , DFS๊ฐ ๋๋ฌ์ ๋ ๋ฐฉ๋ฌธํ ๋ ธ๋์ ์ c๊ฐ ์ด์ ๋ณด๋ค ์ฆ๊ฐํ๋ค๋ฉด ์๋ก์ด ๊ทธ๋ํ๊ฐ ์กด์ฌํ๋ค๋ ์๋ฏธ์ด๋ฏ๋ก count ๋ฅผ 1 ์ฆ๊ฐ์์ผ์ค๋ค.
์ต์ข ์ ์ผ๋ก count์ ๊ธฐ๋ก๋ ์๊ฐ ์ฐ๊ฒฐ ์์์ ๊ฐ์๊ฐ ๋๋ค.
์ฝ๋
#include <cstdio>
#define MAX 1001
using namespace std;
int graph[MAX][MAX] = { 0 };
bool visited[MAX] = { false };
void DFS(int vertex, int V, int& C);
int main(void) {
int n, m;
scanf("%d %d", &n, &m);
for(int i = 0; i < m; i++) {
int a, b;
scanf("%d %d", &a, &b);
graph[a][b] = graph[b][a] = 1;
}
int c = 0, count = 0, i = 1;
while(c != n) {
int temp = c;
DFS(i, n, c);
if(temp < c)
count++;
i++;
}
printf("%d\n", count);
return 0;
}
void DFS(int vertex, int V, int& c) {
if(!visited[vertex]){
visited[vertex] = true;
c++;
}
for(int i = 1; i <= V; i++) {
if(visited[i] || graph[vertex][i] == 0)
continue;
DFS(i, V, c);
}
}
'์ฝ๋ฉํ ์คํธ ์ค๋น > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 2667๋ฒ: ๋จ์ง๋ฒํธ๋ถ์ด๊ธฐ - C++ (0) | 2021.12.24 |
---|---|
[๋ฐฑ์ค] 2331๋ฒ: ๋ฐ๋ณต์์ด - C++ (0) | 2021.12.23 |
[๋ฐฑ์ค] 1260๋ฒ: DFS์ BFS - C++ (0) | 2021.12.21 |
[๋ฐฑ์ค] 1676๋ฒ: ํฉํ ๋ฆฌ์ผ 0์ ๊ฐ์ - C++ (0) | 2021.08.25 |
[๋ฐฑ์ค] 11653๋ฒ: ์์ธ์๋ถํด - C++ (0) | 2021.08.23 |