Pagini recente » Cod sursa (job #121297) | Cod sursa (job #1885082) | Cod sursa (job #1487821) | Cod sursa (job #3232589) | Cod sursa (job #3003544)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
const int NMAX = 5e4+1;
vector<int> adj[NMAX];
int n, m, x, y, id[NMAX];
bool written[NMAX];
void dfs(int s){
if(id[s]==0){
fout << s << ' ';
written[s] = true;
}else{
return;
}
for(auto u : adj[s]){
if(written[u]) continue;
id[u]--;
dfs(u);
}
}
int main(){
fin >> n >> m;
while(fin >> x >> y){
adj[x].push_back(y);
id[y]++;
}
for(int i=1; i<=n; i++){
if(id[i]==0 && !written[i]) dfs(i);
}
}