Cod sursa(job #1288336)
| Utilizator | Data | 8 decembrie 2014 19:10:54 | |
|---|---|---|---|
| Problema | Combinari | Scor | 100 |
| Compilator | c | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <stdio.h>
#include <stdlib.h>
int n, k, stiva[19];
void afisare() {
int i;
for ( i = 1; i <= k; i++ )
printf("%d ", stiva[i]);
printf("\n");
}
void backtrack(int x) {
if ( x == k + 1 )
afisare();
else {
int i;
for ( i = stiva[x-1] + 1 ; i <= n; i++ ) {
stiva[x] = i;
backtrack(x+1);
}
}
}
int main()
{
freopen("combinari.in","r",stdin);
freopen("combinari.out","w",stdout);
scanf("%d %d", &n, &k);
backtrack(1);
return 0;
}
