Pagini recente » Cod sursa (job #877306) | Cod sursa (job #669227) | Cod sursa (job #324094) | Cod sursa (job #1342211) | Cod sursa (job #1989712)
#include<fstream>
using namespace std;
#define MAX 8
int perm[MAX];
void writeSol(int n,ofstream *out){
for(int i=0;i<n;i++) *out<<perm[i]<<" ";
*out<<endl;
}
bool noRepeat(int k){
bool ok=true;
for(int i=0;i<k;i++)
if(perm[i]==perm[k]) ok=false;
return ok;
}
void back(int k, int n, ofstream *out){
if(k==n) writeSol(n,out);
for(int i=1;i<=n;i++){
perm[k]=i;
if(noRepeat(k)) back(k+1,n,out);
}
}
int main(){
ifstream in; ofstream out;
in.open("permutari.in"); out.open("permutari.out");
out.clear();
int n;
in>>n;
back(0,n,&out);
in.close(); out.close();
return 0;
}