1. 程式人生 > >(ccf)201709-4 通信網絡

(ccf)201709-4 通信網絡

set 網絡 tar ++ str cin eof con map

#include<iostream>  
#include<memory.h>
#include<stack>
#include<string>
#include<cmath>
#include<map>
#include<algorithm> 
#include<sstream>
#include<set>
#include<queue>

using namespace std;
int N,M;
vector<int>v[1001];//用來存鄰接關系 
int con[1024
][1024];//兩個點之間是否可以傳達消息 int visited[1001];//是否已經訪問 int src;//出發點 void dfs(int vec) { if(visited[vec]==1) return; visited[vec]=1; con[src][vec]=1; con[vec][src]=1; for(vector<int>::iterator it=v[vec].begin();it!=v[vec].end();++it) { dfs(*it); } } int main() { cin>>N>>M; for
(int i=1;i<=M;i++) { int src,tar; cin>>src>>tar; v[src].push_back(tar); } for(int i=1;i<=N;i++) { memset(visited,0,sizeof(visited)); src=i; dfs(i); } int ans=0; for(int i=1;i<=N;i++) { for
(int j=1;j<=N;j++) { if(con[i][j]!=1) break; if(j==N) ans++; } } cout<<ans; return 0; }

(ccf)201709-4 通信網絡