Pagini recente » Cod sursa (job #595567) | Cod sursa (job #1476393) | Cod sursa (job #1825666) | Cod sursa (job #2732312) | Cod sursa (job #2696693)
#include <iostream>
#include<fstream>
#include<deque>
using namespace std;
deque<int>r;
deque<int>v[100001];
int n, m, i;
bool viz[500001];
int x[500001], y[500001];
int euler(int pz) {
while(v[pz].size()) {
int muchie;
muchie=v[pz].back();
v[pz].pop_back();
if(viz[muchie]==0) {
viz[muchie]=1;
int vecin;
if(x[muchie]==pz) {
vecin=y[muchie];
}
else {
vecin=x[muchie];
}
euler(vecin);
}
}
r.push_back(pz);
}
int main() {
ifstream fin("ciclueuler.in");
ofstream fout("ciclueuler.out");
fin>>n>>m;
for(i=1;i<=m;i++) {
fin>>x[i]>>y[i];
v[x[i]].push_back(i);
v[y[i]].push_back(i);
}
euler(1);
for(int i=0;i<r.size()-1;i++) {
fout<<r[i]<<" ";
}
return 0;
}