Cod sursa(job #2681273)

Utilizator CyborgSquirrelJardan Andrei CyborgSquirrel Data 5 decembrie 2020 11:04:25
Problema Ciclu Eulerian Scor 50
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <set>

using namespace std;

ifstream fin("ciclueuler.in");
ofstream fout("ciclueuler.out");

int n, m;
multiset<int> gra[100041];

int nxt = 0;

void defeseta(int a=1){
	while(!gra[a].empty()){
		int b = *gra[a].begin();
		gra[a].erase(gra[a].begin());
		gra[b].erase(gra[b].find(a));
		defeseta(b);
	}
	
	if(nxt != 0)fout << nxt << " ";
	nxt = a;
}

int main(){
	// ios_base::sync_with_stdio(false);
	fin >> n >> m;
	for(int i = 0; i < m; ++i){
		int a, b;fin>> a >> b;
		gra[a].insert(b);
		gra[b].insert(a);
	}
	
	defeseta();
	return 0;
}