Cod sursa(job #291876)

Utilizator tibiletsKoos Tiberiu Iosif tibilets Data 30 martie 2009 15:28:21
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include<fstream.h>
ifstream f("permutari.in");
ofstream g("permutari.out");
short st[9],N,k=1;
void afis()
{for(short i=1;i<=N;++i)
  g<<st[i]<<' ';
 g<<'\n';}
short valid()
{for(short i=1;i<k;++i)
  if(st[i]==st[k])
   return 0;
 return 1;}
short succ()
{if(st[k]<N)
 {++st[k];
  return 1;}
 else return 0;}
void back()
{short s;
 while(k>0)
 {do
  {s=succ();}
  while(s&&!valid());
  if(s)
   if(k==N)afis();
   else st[++k]=0;
  else
   --k;}
}
int main()
{f>>N;
back();
return 0;
}