Pagini recente » Cod sursa (job #2233142) | Cod sursa (job #448047) | Cod sursa (job #2109096) | Cod sursa (job #2188186) | Cod sursa (job #2016492)
#include <fstream>
#include <set>
#include <stack>
#include <vector>
#define DIM 100001
using namespace std;
ifstream fi("ciclueuler.in");
ofstream fo("ciclueuler.out");
int n,m;
multiset<int> V[DIM];
stack<int> S;
vector<int> REZ;
int main()
{
fi>>n>>m;
for(int i=1;i<=m;i++)
{
int a,b;
fi>>a>>b;
V[a].insert(b);
V[b].insert(a);
}
S.push(1);
while(!S.empty())
{
int v=S.top();
if(!V[v].empty())
{
int to=(*V[v].begin());
V[v].erase(V[v].begin());
V[to].erase(V[to].find(v));
S.push(to);
}
else
{
S.pop();
REZ.push_back(v);
}
}
for(int i=0;i<REZ.size();i++)
fo<<REZ[i]<<" ";
fi.close();
fo.close();
return 0;
}