Note
Code
#include<bits/stdc++.h>
using namespace std;
int n;
vector<int> v[1010];
bool isvisit[1010];
void dfs(int u,int depth){
isvisit[u]=true;
for(int i=0;i<v[u].size();i++){
int data=v[u][i];
if(isvisit[data]==false){
dfs(data,depth+1);
}
}
}
int main(){
#ifndef ONLINE_JUDGE
freopen("data.txt","r",stdin);
#endif
int m,k,a,b,q;
cin>>n>>m>>k;
for(int i=0;i<m;i++){
cin>>a>>b;
v[a].push_back(b);
v[b].push_back(a);
}
while(k--){
int cnt=0;
memset(isvisit,false,sizeof(isvisit));
cin>>q;
isvisit[q]=true;
for(int i=1;i<=n;i++){
if(isvisit[i]==false){
dfs(i,1);
cnt++;
}
}
cout<<cnt-1<<endl;
}
return 0;
}