Pagini recente » Cod sursa (job #2563156) | Cod sursa (job #1564934) | Cod sursa (job #2506707) | Cod sursa (job #803041) | Cod sursa (job #417515)
Cod sursa(job #417515)
#include<stdio.h>
FILE *f,*g;
int as,ev,k,st[25],n,m,ok,i;
void init() { st[k]=0; }
int succesor() { if(st[k]<n) { st[k]++; return 1; } else return 0; }
int valid() { if(st[k-1]>=st[k]) return 0; }
int solutie() { return k==m; }
void tipar() { for(i=1;i<=m;i++) fprintf(g,"%d ",st[i]); fprintf(g,"\n"); }
int main()
{ f=fopen("combinari.in","r"); g=fopen("combinari.out","w");
fscanf(f,"%d%d",&n,&m);
k=1; st[1]=0;
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;
}