Cod sursa(job #2892292)

Utilizator bogdanputineluBogdan Putinelu bogdanputinelu Data 21 aprilie 2022 17:16:59
Problema Loto Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.97 kb
#include <fstream>
#include <iostream>
#include <unordered_map>
#include <utility>
using namespace std;
unordered_map<int,pair<int,int>> comb;
int main(){
    ifstream f("loto.in");
    ofstream g("loto.out");
    int n,suma,numere[101];
    f>>n>>suma;
    for(int i=0;i<n;++i)
        f>>numere[i];
    for(int i=0;i<n;++i){
        for(int j=i;j<n;++j){
            for(int k=j;k<n;++k){
                comb[numere[i]+numere[j]+numere[k]]= make_pair(numere[i],numere[j]);
            }
        }
    }
    for(int i=0;i<n;++i){
        for(int j=i;j<n;++j){
            for(int k=j;k<n;++k){
                if(comb.find(suma-numere[i]-numere[j]-numere[k])!=comb.end()){
                    int sol=suma-numere[i]-numere[j]-numere[k];
                    g<<numere[i]<<' '<<numere[j]<<' '<<numere[k]<<' '<<comb[sol].first<<' '<<comb[sol].second<<' '<<sol-comb[sol].first-comb[sol].second;
                    return 0;
                }
            }
        }
    }
    g<<-1;
    return 0;
}