Cod sursa(job #409298)
Utilizator | Data | 3 martie 2010 16:06:10 | |
---|---|---|---|
Problema | Combinari | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <stdio.h>
int S[20], n, m;
FILE *g = fopen("back.out", "w");
void print_sol() {
for (int i = 1; i <= m; i++)
fprintf(g, "%d ", S[i]);
fprintf(g, "\n");
}
void back(int k) {
int i;
if (k == m + 1) {
print_sol();
return;
}
for (i = S[k-1] + 1; i <= n; i++) {
S[k] = i;
back(k + 1);
}
}
int main() {
FILE *f = fopen("back.in", "r");
fscanf(f, "%d %d", &n, &m);
back(1);
fclose(f); fclose(g);
return 0;
}