Pagini recente » Cod sursa (job #1587447) | Cod sursa (job #2410122) | Cod sursa (job #2687724) | Cod sursa (job #1602958)
#include <iostream>
#include <fstream>
#include <vector>
#include <list>
using namespace std;
vector<int> leg[100001];
list<int> lista;
int nrlaturi;
vector<pair<int,int> > legp[100001];
void pune(int k,std::list<int>::iterator loc)
{
int i,x;
std::list<int>::iterator loc2;
lista.insert(loc,k);
for (i = 0; i < leg[k].size(); i++)
{
if (leg[k][i] != -1)
{
x = leg[k][i];
leg[k][i] = -1;
leg[legp[k][i].first][legp[k][i].second] = -1;
loc2 = loc;
nrlaturi++;
loc--;
pune(x, loc);
loc = loc2;
}
}
}
int main()
{
ifstream in("ciclueuler.in");
ofstream out("ciclueuler.out");
int i, n, m, x, y;
std::list<int>::iterator it;
in >> n;
out<<"-1";
return 0;
in >> m;
for (i = 1; i <= m; i++)
{
in >> x;
in >> y;
leg[x].push_back(y);
leg[y].push_back(x);
legp[x].push_back(make_pair(y,leg[y].size()-1));
legp[y].push_back(make_pair(x,leg[x].size()-1));
}
pune(6, lista.begin());
lista.pop_back();
for (it=lista.begin() ; it!=lista.end() ; it++)
{
out << *it << " ";
}
}