Pagini recente » Cod sursa (job #1819482) | Cod sursa (job #3183146) | Cod sursa (job #168706) | Cod sursa (job #3220981) | Cod sursa (job #2096200)
#include<fstream>
#include<vector>
#define NMAX 50100
using namespace std;
int n,m,x,y;
bool viz[NMAX];
vector<int> V[NMAX];
int V2[NMAX];
ifstream cin("sortaret.in");
ofstream cout("sortaret.out");
void DFS(int x) {
cout<<x<<" ";
viz[x]=1;
for (int i=0; i<V[x].size(); i++) {
if (!viz[V[x][i]] && V2[V[x][i]]<=1) {
DFS(V[x][i]);
} else if (V2[V[x][i]]>1) V2[V[x][i]]--;
}
}
int main() {
cin>>n>>m;
for (int i=1; i<=m; i++) {
cin>>x>>y;
V2[y]++;
V[x].push_back(y);
}
for (int i=1; i<=n; i++) {
if (!viz[i] && V2[i]==0) {
DFS(i);
}
}
return 0;
}