백준 2606 c++
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
vector <int> graph[101];
vector <bool> visited(101);
int N, M, result = 0;
void input_graph()
{
int i;
int a, b;
for (i = 0; i < M; i++)
{
cin >> a >> b;
graph[a].push_back(b);
graph[b].push_back(a);
}
return;
}
void DFS(int start)
{
int temp, i;
visited[start] = true;
//cout << start << " ";
for (i = 0; i < graph[start].size(); i++)
{
temp = graph[start][i];
if (visited[temp] != true)
{
DFS(temp);
result++;
}
else
{
;
}
}
return;
}
int main(void)
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
cin >> N >> M;
input_graph();
DFS(1);
cout << result << "\n";
return 0;
}