Cod sursa(job #2758926)

Utilizator ArkhamKnightyMarco Vraja ArkhamKnighty Data 14 iunie 2021 11:42:50
Problema Loto Scor 15
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <bits/stdc++.h>

using namespace std;

ifstream in("loto.in");
ofstream out("loto.out");

vector < int > v;
bool ok = 0;
int k;

void backtr(int poz, int sum, deque <int> sol)
{
    if(sum > k)
        return ;

    if(sum == k)
    {
        for(int i = 0 ; i < sol.size() ; i++)
            out << sol[i] << ' ';

        ok = 1;
        return ;
    }

    for(int i = poz; i < v.size() && !ok ; i++)
    {
        sol.push_back(v[i]);

        if(sum + v[i] <= k && sol.size() < 7)
            backtr(i, sum + v[i], sol);
        sol.pop_back();
    }
}

int main()
{
    int n, x;
    in >> n >> k;

    for(int i  = 1 ; i <= n ; i++ )
    {
        in >> x;
        v.push_back(x);
    }
    deque < int > sol;
    backtr(0, 0, sol);

    if(!ok)
        out << -1;
}