Pagini recente » Cod sursa (job #302248) | Cod sursa (job #2531092) | Cod sursa (job #1194682) | Cod sursa (job #2512346) | Cod sursa (job #1011024)
#include <iostream>
#include<fstream>
#include<algorithm>
using namespace std;
int n, v[10];
ifstream f("permutari.in");
ofstream g("permutari.out");
int bun(int k){
for(int i=1; i<k; ++i) if(v[i]==v[k]) return 0;
return 1;
}
void afisare(){
for(int i=1; i<=n; ++i) g<<v[i]<<' ';
g<<'\n';
}
void bt(int k){
for(v[k]=1; v[k]<=n; ++v[k]){
if(bun(k))
if(k==n) afisare();
else bt(k+1);
}
}
int main()
{
int p=1;
f>>n;
if(n==5) cout<<n;
//bt(1);
for(int i=1; i<=n; ++i) v[i]=i; afisare();
for(int i=1; i<=n; ++i) p*=i;
for(int i=2; i<=p; ++i)
next_permutation(v, v+n+1), afisare();
return 0;
}