Pagini recente » Cod sursa (job #672268) | Cod sursa (job #2240798) | Cod sursa (job #630645) | Cod sursa (job #1030569) | Cod sursa (job #412040)
Cod sursa(job #412040)
//Generare de permutari iterativ
#include<fstream>
#define nmax 9
using namespace std;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
int n,x[nmax];
void afisare()
{for(int i=1;i<=n;i++)
fout<<x[i];
fout<<'\n';
}
int valid(int k)
{for(int i=1;i<k;i++)
if(x[i]==x[k]) return 0;
return 1;
}
void back()
{int k;
k=1;
while(k>0)
if(x[k]<n)
{x[k]++;
if(valid(k)) if(k==n) afisare();
else {k++;
x[k]=0;
}
}
else k--;
}
int main()
{fin>>n;
back();
fin.close();
fout.close();
return 0;
}