Pagini recente » Cod sursa (job #701253) | Borderou de evaluare (job #470836) | Cod sursa (job #633137) | Cod sursa (job #2607331)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("permutari.in");
ofstream out("permutari.out");
int n,k,st[10];
bool v,ac;
void suc(){
if(st[k]<n){
st[k]++;
ac=1;
}else ac=0;
}
void valid(){
v=1;
for(int i=1;i<k;i++)
if(st[i]==st[k]) v=0;
}
void back(){
k=1;
st[k]=0;
while(k>0){
do{
suc();
if(ac) valid();
}while(ac && !v);
if(ac){
if(k==n){
for(int i=1;i<=n;i++){
out <<st[i]<<" ";
}
out <<"\n";
}else{
k++;
st[k]=0;
}
}else k--;
}
}
int main(){
in >>n;
back();
return 0;
}