Cod sursa(job #2577051)

Utilizator KillHorizon23Orban Robert KillHorizon23 Data 8 martie 2020 12:15:48
Problema Combinari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.83 kb
#include <bits/stdc++.h>
#define hello ios::sync_with_stdio(false); fin.tie(0); fout.tie(0);
#define bye fin.close(); fout.close(); return 0;
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
typedef long long ll;
const ll VMAX = 18;
vector<ll> v(VMAX);
ll n, k;
void afis()
{
    for (int i = 1; i <= n; ++i)
        fout << v[i] << " ";
    fout << "\n";
}
bool verif(int poz)
{
    for (int i = 1; i < poz; ++i)
        if (v[i] == v[poz] || v[i] > v[i + 1])
            return false;
    return true;
}
void bak(int poz)
{
    if (poz == n + 1)
        afis();
    else
        for (int i = 1; i <= k; ++i)
        {
            v[poz] = i;
            if (verif(poz))
                bak(poz + 1);
        }
}
int main()
{
    hello
    fin >> k >> n;
    bak(1);
    bye
}