Cod sursa(job #1558605)

Utilizator fetti_danutzdezactivat fetti_danutz Data 29 decembrie 2015 13:46:01
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream fin("combinari.in");
ofstream fout("combinari.out");


int N, K;
int x[20]; //
bool s[20];

void Comb(int k);
void Write(int k);

int main()
{
    fin >> N >> K;
    x[0] = 1;
    Comb(1);

    fin.close();
    fout.close();
    return 0;
}

void Comb(int k)
{
    if ( k > K )
    {
        Write(k - 1);
        return;
    }

    for ( int i = x[k - 1]; i <= N; ++i )
        if ( !s[i] )
        {
            s[i] = true;
            x[k] = i;
            Comb(k + 1);
            s[i] = false;
        }
}

void Write(int k)
{
    for (int i = 1; i <= k; ++i )
        fout << x[i] << ' ';
    fout << '\n';
}