Pagini recente » Cod sursa (job #436842) | Cod sursa (job #1088765) | Istoria paginii runda/simulare.oji.2015 | Cod sursa (job #2572734) | Cod sursa (job #1879650)
#include<fstream>
#include<vector>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
vector<int >L[50005];
int v[50005],sol[50005],f[50005];
int n,m,a,b,q1,i,j,k;
int maxim;
void dfs(int nod){
v[nod]=1;
for(int i=0;i<L[nod].size();i++){
int fiu=L[nod][i];
if(v[fiu]==0){
dfs(fiu);
}
}
sol[++k]=nod;
}
int main(){
fin>>n>>m;
for(i=1;i<=m;i++){
fin>>a>>b;
L[a].push_back(b);
f[b]=1;
}
for(i=1;i<=n;i++){
if(f[i]==0){
dfs(i);
}
}
for(i=1;i<=k;i++){
fout<<sol[k-i+1]<<" ";
}
return 0;
}