Cod sursa(job #2721726)

Utilizator Victor2006Nicola Victor-Teodor Victor2006 Data 12 martie 2021 10:16:14
Problema Combinari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream>
#define N 18

using namespace std;

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

char sol[N + 1], f[N + 1];

void bkt( int n, int k, int poz ) {
    if ( poz == k + 1 ) {
        for ( int i = 1; i <= k; i ++ )
            fout << (int)sol[i] << " ";
        fout << "\n";
        return;
    }
    for ( int i = 1; i <= n; i ++ ) {
        if ( !f[i] && i > sol[poz - 1] ) {
            f[i] = 1;
            sol[poz] = i;
            bkt( n, k, poz + 1 );
            f[i] = 0;
        }
    }
}

int main() {
    int n, k;
    fin >> n >> k;
    bkt( n, k, 1 );
    return 0;
}