Pagini recente » Cod sursa (job #1984063) | Cod sursa (job #1196359) | Cod sursa (job #64618) | Cod sursa (job #2804011) | Cod sursa (job #959467)
Cod sursa(job #959467)
#include <fstream>
#include <vector>
#define DIMN 50010
using namespace std;
vector<int> L[DIMN];
int s[DIMN], v[DIMN], d[DIMN];
int n, x, y, k, m, i;
void dfs(int x) {
v[x] = 1;
for (vector<int>::iterator it = L[x].begin(); it!=L[x].end(); it++) {
if (v[*it] == 0) {
dfs(*it);
}
}
s[++k] = x;
}
int main() {
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
fin>>n>>m;
for (i=1;i<=m;i++) {
fin>>x>>y;
L[x].push_back(y);
d[y] ++;
}
for (i=1;i<=n;i++)
if (d[i] == 0)
dfs(i);
for (i=n;i>=1;i--)
fout<<s[i]<<" ";
return 0;
}