Cod sursa(job #252825)

Utilizator BooZZySandu Bogdan BooZZy Data 4 februarie 2009 22:43:33
Problema Dusman Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<fstream.h>
int v[1002][3],z=0,n,k,m,i,s[1003],a,b,q,ok;
int main()
{
ifstream f("dusman.in");
ofstream g("dusman.out");
f>>n>>k>>m;
for(i=0;i<m;i++)
	{
	f>>a>>b;
	if(v[a][0]==0)v[a][0]=b;
	else if(v[a][1]==0)v[a][1]=b;
	else v[a][2]=b;
	if(v[b][0]==0)v[b][0]=a;
	else if(v[b][1]==0)v[b][1]=a;
	else v[b][2]=a;
	}


q=0;
s[q]=0;
while(q>=0)
	if(s[q]<n)
		{
		s[q]++;
		ok=1;
		for(i=0;i<q;i++)
			if(s[i]==s[q])ok=0;
		if(s[q-1]==v[s[q]][0]||s[q-1]==v[s[q]][1]||s[q-1]==v[s[q]][2])ok=0;
			if(ok)
				if(q==n-1)
					{
					z++;
					if(z==k)
						{for(i=0;i<n;i++)g<<s[i]<<" ";break;}
					}
				else {q++;s[q]=0;}
		}
	else q--;



return 0;
}