Cod sursa(job #1042948)
Utilizator | Bogdan Mucenic mucenic_b101 | Data | 27 noiembrie 2013 20:18:52 |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.61 kb |
#include <cstdio>
int st[20],n, k;
void afisare( FILE *g ) {
for( int i = 1 ; i <= k ; ++i )
fprintf( g, "%d ", st[i] );
fprintf( g, "\n" );
}
void back( int niv, FILE *g ) {
if( niv == k + 1 )
afisare( g );
else
for( int i = st[niv - 1] + 1 ; i <= n - k + niv ; ++i ) {
st[niv] = i;
back( niv + 1, g );
}
}
int main () {
FILE *f, *g;
f = fopen( "combinari.in", "r" );
g = fopen( "combinari.out", "w" );
fscanf( f, "%d%d", &n, &k );
back( 1, g );
fclose( f );
fclose( g );
return 0;
}