Pagini recente » Istoria paginii runda/acsdfg | Cod sursa (job #1629580) | Cod sursa (job #2869267) | Cod sursa (job #1942123) | Cod sursa (job #1202667)
#include <fstream>
#include <vector>
#define lmax 50005
#define lmax1 100005
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
vector <int>v[lmax];
int n,m;
int grad[lmax];
inline void read()
{
int x,y;
f>>n>>m;
for (int i=1;i<=m;i++)
{
f>>x>>y;
v[x].push_back(y);
grad[y]++;
}
}
inline void solve()
{
vector <int>::iterator it;
for (int i=1;i<=n;i++)
if (grad[i]==0)
g<<i<<" ";
for (int i=1;i<=n;i++)
for (it=v[i].begin();it<v[i].end();it++)
{
grad[*it]--;
if (grad[*it]==0)
g<<*it<<" ";
}
}
int main()
{
read();
solve();
f.close();
g.close();
}