Cod sursa(job #3286143)

Utilizator Minea_TheodorMinea Theodor Stefan Minea_Theodor Data 13 martie 2025 19:12:43
Problema Combinari Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("evaluare.in");
ofstream fout("evaluare.out");
int n, k;
int v[20];
bool ok(int i)
{
    for(int j=1; j < i; j++)
        if(v[j]==v[i])
            return false;
    if(i > 1)
        if(v[i] <= v[i-1])
            return false;
    return true;
}
bool sol(int i)
{
    return i == k;
}
void afis()
{
    for(int i=1; i <= k; i++)
        fout << v[i] << " ";
    fout << '\n';
}
void backtrack(int i)
{
    for(int j=1; j <= n; j++)
    {
        v[i]=j;
        if(ok(i))
        {
            if(sol(i))
                afis();
            else
                backtrack(i+1);
        }
    }
}
int main()
{
    fin >> n >> k;
    backtrack(1);
    return 0;
}