P1960 郁闷的记者(拓扑排序+小判断)

思路:运用拓扑排序思路,即入度为首先到0的是不是最强的(脑补一下~)

ACcode:


#include
using namespace std;
#define int long long
const int N=5e3+10;
int n,m,ru[N],flag; 
vectorv[N];
void topsort(){
	queueq;
	for(int i=1;i<=n;i++){
		if(ru[i]==0)q.push(i);
	}
	
	while(!q.empty()){
	  int k=0;
	  int t=q.front();
	  q.pop();
	  cout<1)flag=1;	
	}
	if(flag)cout<<1<<"\n";
	else cout<<0<<"\n";
}
void solve() {
  cin>>n>>m;
  for(int i=1;i<=m;i++){
  	int x,y;
  	cin>>x>>y;
  	v[x].push_back(y);
  	ru[y]++;
  }
  topsort();
}
signed main() {


	ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
	int tt=1;
//	cin>>tt;
	while(tt--) solve();
	return 0;
}
//3

over~

你可能感兴趣的:(算法,拓扑排序)