Cod sursa(job #625895)

Utilizator flavianeacsuFlavia Neacsu flavianeacsu Data 25 octombrie 2011 20:26:42
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include<fstream.h>
int i,n,x[100000];
char z[100];
ifstream fin("date.in");
ofstream  fout("date.out");
void citeste()
{fin>>n;
for(i=1;i<=n;i++)
	fin>>z[i];
}
void scrie_sol()
{for(i=1;i<=n;i++)
  	fout<<z[x[i]]<<" ";
fout<<"\n";}

int valid(int k)
 {int ok;
  ok=1;
  for(i=1;i<=k-1;i++)
	  if(x[i]==x[k])
		  return 0;
 return ok;}
 
 void back()
 {int k;
 k=1; x[k]=0;
 while(k>0)
	 if(x[k]<n)
	 {x[k]++;
	   if(valid(k))
		   if(k==n)
			   scrie_sol();
		   else
		   {k++;
		   x[k]=0;}
	 }
    else
    k--;}		

int main()
{
citeste();
back();
fin.close();
fout.close();
return 0;}