Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<vector>
- using namespace std;
- bool visit[15];
- vector<int>edge[15];
- void dfs(int node)
- {
- visit[node]=true;
- for(int j=0;j<edge[node].size();j++)
- if(!visit[edge[node][j]])
- dfs(edge[node][j]);
- }
- int main()
- {
- int testCase,CaseNo=1,points,u,v,cnt=0;
- cin>>testCase;
- while(testCase--)
- {
- cin>>points;
- for(int i=0;i<points;i++)
- {
- cin>>u>>v;
- edge[u].push_back(v);
- edge[v].push_back(u);
- }
- for(int i=1;i<=points;i++)
- if(!visit[i])
- {
- cnt++;
- dfs(i);
- }
- cout<<"Case "<<CaseNo++<<": "<<cnt<<endl;
- //clear
- cnt=0;
- for(int i=1;i<=points;i++)
- {
- visit[i]=false;
- edge[i].clear();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment