Pagini recente » Cod sursa (job #1035351) | Cod sursa (job #2862832) | Cod sursa (job #2138406) | Cod sursa (job #2361954) | Cod sursa (job #1850533)
#include <iostream>
#include <fstream>
#include <vector>
#define Nmax 50002
using namespace std;
ifstream f("sortaret.in");
ofstream g("sortaret.out");
vector <int> gr[Nmax];
int p[Nmax];
int n, m, ok;
bool it_exists(int x, int y)
{
for(auto i:gr[x])
{
if(i==y)
return true;
}
return false;
}
int main()
{
f>>n>>m;
for(int i=0;i<m;i++)
{
int x,y;
f>>x>>y;
if(!it_exists(x, y)){
gr[x].push_back(y);
p[y]++;
}
}
do
{
ok=0;
for(int i=1;i<=n;i++)
{
if(p[i]==0)
{
p[i]=-1;
ok=1;
g<<i<<" ";
for(unsigned int j=0;j<gr[i].size();j++)
{
p[gr[i][j]]--;
}
}
}
}while(ok==1);
return 0;
}