Cod sursa(job #2744723)

Utilizator AlexandraBoghiuAlexandra Boghiu AlexandraBoghiu Data 25 aprilie 2021 00:31:45
Problema Loto Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.21 kb
#include <bits/stdc++.h>
using namespace std;
ifstream F ("loto.in");
ofstream G ("loto.out");
struct suma
{
    int t1, t2, t3, stotal;
}suma[100*100*100];
bool cmp(int a, int b)
{
    return a<b;
}
int main()
{
    int n, s, v[100], p = -1;
    F>>n>>s;
    for(int i = 0; i < n; i++)
        F>>v[i];
    sort(v, v + n - 1);
    for(int i = 0; i < n; i++)
        G<<v[i]<<" ";
    for(int i = 0; i < n; i++)
        for(int j = i; j < n; j++)
            for(int k = j; k < n; k++)
            {
                p++;
                suma[p].t1 = v[i];
                suma[p].t2 = v[j];
                suma[p].t3 = v[k];
                suma[p].stotal = suma[p].t1 + suma[p].t2 + suma[p].t3;
            }
    int st = 0;
    int dr = p - 1;
    int ok = 0;
    while(st <= dr)
    {
        if(suma[st].stotal + suma[dr].stotal == s)
        {
            G<<suma[st].t1<<" "<<suma[st].t2<<" "<<suma[st].t3<<" "<<suma[dr].t1<<" "<<suma[dr].t2<<" "<<suma[dr].t3;
            ok = 1;
            break;
        }
        else if(suma[st].stotal + suma[dr].stotal < s)
            st++;
        else
                dr--;
    }
    if(ok == 0)
        G<<-1;



    return 0;
}