Cod sursa(job #759118)

Utilizator MarquiseMarquise Marquise Data 16 iunie 2012 18:46:03
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <cstdio>
#define NMAX 19

using namespace std;

int n, c, st[NMAX];
FILE *in, *out;

void write()
{
     for (int i = 1; i <= c; i++)
         fprintf(out, "%d ", st[i]);
     fprintf(out, "\n");
}

void back(int k)
{
     if ( k == c + 1)
        write();
     else
     {
         for ( int i = st[k - 1] + 1; i <= n - c + k; i++)
         {
             st[k] = i;
             back( k + 1);
         }
     }   
}

int main()
{
    in = fopen("combinari.in", "r");
    out = fopen("combinari.out", "w");
    
    fscanf(in, "%d %d", &n, &c);
    back(1);   
    fclose(in);
    fclose(out);
    return 0;    
}