Cod sursa(job #1206318)

Utilizator mihaimusatMihai Musat mihaimusat Data 9 iulie 2014 16:41:02
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <stdio.h>

int v[18];

void comb( int n, int k, int pos, int cifra, FILE *fout ) {
  if ( pos == k ) {
    int i;
    for ( i = 0; i < k; i++ )
      fprintf( fout, "%d ", v[i] );
    fprintf( fout, "\n" );
  } else {
    v[pos] = cifra;
    comb( n, k, pos + 1, cifra + 1, fout );
    if ( n - cifra >= k - pos )
      comb( n, k, pos, cifra + 1, fout );
  }
}

int main() {
  FILE *fin, *fout;
  int n, k;

  fin = fopen( "combinari.in", "r" );
  fscanf( fin, "%d%d", &n, &k );
  fclose( fin );

  fout = fopen( "combinari.out", "w" );
  comb( n, k, 0, 1, fout );
  fclose( fout );

  return 0;
}