Pagini recente » Cod sursa (job #1540051) | Cod sursa (job #1423692) | Cod sursa (job #2344109) | Cod sursa (job #1674361) | Cod sursa (job #419790)
Cod sursa(job #419790)
#include<stdio.h>
FILE *f,*g;
int k,n,st[25],i,as,ev;
void init() { st[k]=0; }
int succesor() { if(st[k]<n) { st[k]++; return 1; } else return 0; }
int valid() { if(st[k]<=st[k-1]) return 0; else return 1; }
void tipar() { for(i=1;i<=k;i++) fprintf(g,"%d ",st[i]); fprintf(g,"\n"); }
int solutie() { if(k<=n) tipar(); return k==n; }
int main()
{ f=fopen("submultimi.in","r"); g=fopen("submultimi.out","w");
fscanf(f,"%d",&n);
k=1; init();
while(k)
{ do
{ as=succesor();
if(as) ev=valid();
}
while(!(as&&ev||!as));
if(as) if(solutie()) tipar();
else { k++; init(); }
else k--;
}
fclose(g);
return 0;
}