Pagini recente » Cod sursa (job #266724) | Cod sursa (job #1497835) | Cod sursa (job #611928) | Cod sursa (job #1462114) | Cod sursa (job #181166)
Cod sursa(job #181166)
#include <stdio.h>
int st[100],k,n,as,ev;
void init(){
st[k] = 0;
}
int sol(){
return n==k;
}
int valid(){
for(int i = 1; i < k; i++)
if (st[k] == st[i]) return 0;
return 1;
}
int succ(){
if (st[k]>n)return 1;
else return 0;
}
void pt(){
FILE*out = fopen("permutari.out","w");
for(int i=1; i<=k; i++)
fprintf(out, "%d", st[i]);
}
void bt(){
k = 1;
init();
while (k){
as = 1;
ev = 0;
while (as && !ev){
st[k]++;
as = succ();
ev = valid();
}
if (as){
if(sol())
pt();
else{
k++;
init();
}
}else{
k--;
init();
}
}
}
int main(){
FILE*in = fopen("permutari.in","r");
fscanf(in,"%d",&n);
bt();
return 0;
}