Cod sursa(job #2457204)

Utilizator nTropicGravityesadasdwaadwqafr nTropicGravity Data 16 septembrie 2019 21:36:36
Problema Combinari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include    <fstream>

using namespace std;

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

#define ARRAY_MAX 100005

int N, K;
int arr[ARRAY_MAX];
bool check[ARRAY_MAX];

void backTrack(int start, int N, int K) {
    if (start - 1 == K) {
        for (int i = 1; i <= K; i++)
            fout << arr[i] << " ";

        fout << "\n";
    }

    else {
        for (int i = 1; i <= N; i++)
            if (!check[i] && arr[start - 1] < i) {
                arr[start] = i;

                check[i] = true;

                backTrack(start + 1, N, K);

                check[i] = false;
            }
    }
}

int main() {
    fin >> N >> K;

    backTrack(1, N, K);
}