Cod sursa(job #604676)

Utilizator batistaUPB-Oprea-Cosmin-Dumitru batista Data 24 iulie 2011 14:19:37
Problema Ciclu Eulerian Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<fstream>
using namespace std;
short a[100003][100003],x,y,i,n,m,ind=1,s[100003],vf=1,k,j;
void un_ciclu(int ind)
{
	for(k=1;k<=n;k++)
	  if(a[s[ind]][k])
	  {
		  a[s[ind]][k]--;a[k][s[ind]]--;
		  for(j=++vf;j>ind;j--) s[j]=s[j-1];
		  s[++ind]=k;
		  un_ciclu(ind);
	  }
}
int main()
{
	ifstream f("ciclueuler.in");ofstream g("ciclueuler.out");
	f>>n>>m;
	for(i=1;i<=m;i++)
	 {
		f>>x>>y;
		a[x][y]++;a[y][x]++;
	 }
	s[1]=1;
	for(i=1;s[i];i++)
		un_ciclu(i);
	for(i=1;i<vf;i++)
		g<<s[i]<<" ";
	f.close();g.close();
return 0;}