Pagini recente » Cod sursa (job #151905) | Cod sursa (job #136510) | Cod sursa (job #3275157) | Cod sursa (job #1068653) | Cod sursa (job #999349)
Cod sursa(job #999349)
# include <iostream>
# include <fstream>
# include <vector>
# include <bitset>
using namespace std;
# define MAXN 50010
# define MAXM 100010
typedef vector<int> :: iterator iter;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
int n, m;
vector<int> G[MAXN];
bitset<MAXN> viznod;
vector<int> coada;
void tpsort(int nod)
{
//cout << nod << ' ';
for (iter it = G[nod].begin(); it != G[nod].end(); it++) {
if (viznod[*it] == false) {
viznod[*it] = true;
tpsort(*it);
}
}
coada.push_back(nod);
}
int main()
{
f >> n >> m;
for (int i = 1; i <= m; i++) {
int x, y;
f >> x >> y;
G[x].push_back(y);
}
for (int i = 1; i <= n; i++) {
if (viznod[i] == false) {
viznod[i] = true;
tpsort(i);
}
}
for (iter it = coada.end() - 1; it != coada.begin() - 1; it--) {
g << *it << ' ';
}
return 0;
}