Cod sursa(job #370314)

Utilizator GotenAmza Catalin Goten Data 30 noiembrie 2009 19:45:19
Problema Dusman Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<fstream.h>

int n,k,m,i,x[1001],a[1001][1001],z,y,t,ok,nr;

int main()
{
 ifstream f("dusman.in");
 ofstream g("dusman.out");
 f>>n>>k>>m;
 for(i=1;i<=m;i++)
  {
   f>>z>>y;
   a[z][y]=a[y][z]=1;
   }
 int q=1;
 t=1;
 while(t&&q)
 {
  x[t]++;
  ok=0;
  while(!ok)
  {
   ok=1;
   for(i=1;i<t;i++)if(x[i]==x[t]||a[x[t-1]][x[t]])ok=0;
   if(!ok)x[t]++;
   if(x[t]>n)break;
   }
  if(x[t]>n)t--;
  else if(t==n)
	{
	 nr++;
	 if(k==nr){
	 for(i=1;i<=n;i++)g<<x[i]<<' ';t=0;}
	 t--;
	 }
	else
	 {
	  t++;
	  x[t]=0;
	  }
 }
return 0;
}