Pagini recente » Cod sursa (job #1385661) | Cod sursa (job #1001535) | Cod sursa (job #985552) | Cod sursa (job #1140639) | Cod sursa (job #230058)
Cod sursa(job #230058)
#include <fstream>
int n,k;
int st[9];
using namespace std;
void citire(){
fstream fin ("permutari.in",ios::in);
fin>>n;
fin.close();
}
fstream fout("permutari.out",ios::out);
int valid(int k){
if (st[k]>n) return 0;
if (st[k]<=n)
for (int i=1;i<=k-1;i++){
if (st[i]==st[k])
return 0;}
return 1;
}
void print_it(){
for (int i=1;i<=k;i++)
fout<<st[i]<<" ";
fout<<endl;
}
int main(){
citire();
k=1;
st[k]=1;
while (k){
if (valid(k)){
if (k==n) {print_it();
st[k]++;
}
else {
k++;
st[k]=1;}
} else{
if (st[k]<n) {st[k]++;}
else {st[k]=0;
k--;
st[k]++;}
}
}
}