Pagini recente » Cod sursa (job #1059461) | Cod sursa (job #1510533) | Cod sursa (job #11109) | Cod sursa (job #73865) | Cod sursa (job #1199403)
#include <stdio.h>
#define MAXN 18
FILE *out;
int n, m, ap[ MAXN ];
void bkt( int nr, int k ){
int i;
if ( nr == n || k == 0 ){
int ad = 0;
for ( i = 0; i < MAXN; i++ ) ad += ap[ i ];
if ( ad == m ){
for ( i = 0; i < MAXN; i++ ){
if ( ap[ i ] ) fprintf ( out, "%d ", i + 1 );
}
fprintf ( out, "\n" );
}
}
else{
for ( i = nr; i < n; i++ ){
ap[ i ] = 1;
bkt ( i + 1, k - 1 );
ap[ i ] = 0;
}
}
return ;
}
int main()
{
FILE *in = fopen ( "combinari.in", "r" );
fscanf ( in, "%d%d", &n, &m );
fclose ( in );
out = fopen ( "combinari.out", "w" );
bkt( 0, m );
fclose ( out );
return 0;
}