Pagini recente » Cod sursa (job #491596) | Cod sursa (job #2677443) | Cod sursa (job #1880242) | Cod sursa (job #1841748) | Cod sursa (job #1602405)
#include <stdio.h>
#include <stdlib.h>
#define IN "combinari.in"
#define OUT "combinari.out"
#define NMAX 18
int n, m;
int perm [NMAX];
inline void print (void){
int k;
for(k = 0; k < m; ++k)
printf ("%d ", perm[k]);
printf ("\n");
}
void bkt (int lev){
if (lev == m)
print();
else{
int k;
if (lev)
for (k = perm [lev - 1] + 1; k <= n; ++ k){
perm [lev] = k;
bkt (lev+ 1);
}
else
for (k = 1; k <= n; ++ k){
perm [lev] = k;
bkt (lev + 1);
}
}
}
int main(void){
freopen (IN, "r", stdin);
freopen (OUT, "w", stdout);
scanf ("%d%d", &n, &m);
//printf ("%d, %d\n", n, m);
bkt (0);
fclose (stdin);
fclose (stdout);
return 0;
}