Pagini recente » Cod sursa (job #2575566) | Cod sursa (job #563819) | Cod sursa (job #2630617) | Cod sursa (job #1424388) | Cod sursa (job #2452038)
#include <stdio.h>
int v[18], f[19];
int n, k;
FILE *fin, *fout;
void afisare(){
int i;
for ( i = 0; i < k; i++ )
fprintf( fout, "%d ", v[i] );
fprintf( fout, "\n" );
}
void generare( int poz ){
if ( poz != k ){
int i, x;
if ( poz == 0 )
x = 0;
else
x = v[poz - 1];
for ( i = x + 1; i <= n - k + 1 + poz; i++ ){
if ( f[i] == 0 ){
f[i] = 1;
v[poz] = i;
generare( poz + 1 );
f[i] = 0;
}
}
}
else{
afisare();
}
}
int main(){
fin = fopen( "combinari.in", "r" );
fout = fopen( "combinari.out", "w" );
fscanf( fin, "%d%d", &n, &k );
generare( 0 );
fclose( fin );
fclose( fout );
return 0;
}