Cod sursa(job #1182069)
Utilizator | Tudor Maxim tudormaxim | Data | 4 mai 2014 17:15:35 |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.73 kb |
#include<fstream>
using namespace std;
ifstream in("permutari.in");
ofstream out("permutari.out");
int N,v[10],vf;
void backtracking()
{
int k=1,i;
while(k>0)
{
do
{
v[k]++;
vf=1;
for(i=1;i<k;i++)
if(v[i]==v[k])
vf=0;
}
while(v[k]<=N&&vf==0);
if(v[k]<=N)
{
if(k==N)
{
for(i=1;i<=N;i++)
out<<v[i]<<' ';
out<<'\n';
}
else
v[++k]=0;
}
else
k--;
}
}
int main()
{
in>>N;
in.close();
backtracking();
return 0;
}