安禄山在朕做P3916时举兵叛乱导致朕的测评机爱妃受到惊吓,朕的AC变成30分!
  • 板块灌水区
  • 楼主Tang_Xuan_Zong
  • 当前回复48
  • 已保存回复51
  • 发布时间2024/8/3 12:19
  • 上次更新2024/8/3 12:50:31
查看原帖
安禄山在朕做P3916时举兵叛乱导致朕的测评机爱妃受到惊吓,朕的AC变成30分!
1414042
Tang_Xuan_Zong楼主2024/8/3 12:19
#include <bits/stdc++.h>
using namespace std ;
vector <int> e[100005];
int n , m , beg , to , ans;
bool mar[100005] ;
void dfs( int x ){
	if( e[x].empty() == true ){
		if( x >= ans ){
			ans = x ;
		}
		return ;
	}
	if( x >= ans ){
		ans = x ;
	}
	mar[x] = true ;
	bool k = false ;
	for( int i = 0 ; i < e[x].size() ; i ++ ){
		if( mar[e[x][i]] == true){
			k = true ;
		}
	}
	if( k == true ){
		return ;
	}
	for( int i = 0 ; i < e[x].size() ; i ++ ){
		dfs(e[x][i]);
		mar[e[x][i]] = false ;
	}
}
int main(){
	scanf("%d %d" , &n , &m );
	for( int i = 0 ; i < m ; i ++ ){
		scanf("%d %d" , &beg , &to );
		e[beg].push_back(to);
	}
	for( int i = 1 ; i <= n ; i ++ ){
		ans = 0 ;
		memset(mar,0,sizeof(mar));
		dfs(i);
		cout << ans << " ";
	}
	return 0 ;
}
2024/8/3 12:19
加载中...