Pagini recente » Cod sursa (job #2487395) | Cod sursa (job #304727) | Cod sursa (job #2348637) | Cod sursa (job #1435104) | Cod sursa (job #272112)
Cod sursa(job #272112)
// combinari de n luate cate k, lexicografic
#include <stdio.h>
int s[19];
int n,k,i,j;
int main() {
FILE *f = fopen("combinari.in", "r");
FILE *g = fopen("combinari.out", "w");
fscanf(f,"%d %d",&n,&k);
//construiesc prima combinare in ordine lexicografica
for (i=1; i<=k; i++)
s[i] = i;
for (;;) {
//afisez combinarea
for (i=1; i<=k; i++)
fprintf(g,"%d ",s[i]);
fprintf(g,"\n");
//construiesc urmatoarea combinare
i = k;
while (i!=0 && s[i]==n-k+i)
i--;
if (i==0)
break;
s[i]++;
for (j=i+1; j<=k; j++)
s[j] = s[j-1]+1;
}
fclose(f);
fclose(g);
return 0;
}