Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;;
- vector<int> v[10001];
- bool vis[10001];
- void dfs(int src){
- vis[src]=true;
- int i;
- for(i=0; i<v[src].size();i++){
- if(vis[v[src][i]] == false){
- dfs(v[src][i]);
- }
- }
- }
- int main(){
- int n,m,a,b;
- cin>>n>>m;
- while(m--){
- cin>>a>>b;
- v[a].push_back(b);
- v[b].push_back(a);
- }
- memset(vis,false,sizeof(vis));
- int cnt=0;
- for(int i=1;i<=n;i++){
- if(vis[i]==false){
- dfs(i);
- cnt++;
- }
- }
- cout<<cnt-1<<"\n";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement