Pagini recente » Cod sursa (job #1396368) | Cod sursa (job #3152135) | Cod sursa (job #1757780) | Cod sursa (job #281563) | Cod sursa (job #2370713)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("sortaret.in");
ofstream fout("sortaret.out");
const int Nmax=50005;
const int Mmax=100005;
int N,M;
int O[Nmax],Nod[Nmax];
struct muchii
{
int x,y;
}G[Mmax];
void read()
{
fin>>N>>M;
int x,y;
for(int i=0;i<M;i++)
{
fin>>x>>y;
G[i].x=x;
G[i].y=y;
}
for(int i=1;i<=N;i++)
{
O[i]=i;
Nod[i]=i;
}
}
void sorteaza()
{
int schimb=1,aux;
do
{
schimb=0;
for(int i=0;i<M;i++)
{
int nod=G[i].x;
int vecin=G[i].y;
if(O[nod]>O[vecin])
{
aux=O[nod];
O[nod]=O[vecin];
O[vecin]=aux;
schimb=1;
}
}
}while(schimb);
}
void afiseaza()
{
for(int i=1;i<=N;i++)
fout<<Nod[O[i]]<<" ";
}
int main()
{
read();
sorteaza();
afiseaza();
return 0;
}