Cod sursa(job #1955829)

Utilizator Andrei2000Andrei Mihailescu Andrei2000 Data 6 aprilie 2017 11:36:39
Problema Loto Scor 65
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include <bits/stdc++.h>
#define Nmax 102
using namespace std;
ifstream fin ("loto.in");
ofstream fout ("loto.out");
struct tri{
    int x,y,z;
};
unordered_map <int, tri> hash1;

int main()
{
    int n,S,v[Nmax];
    int w;
    fin>>n>>S;
    for(int i=1;i<=n;++i)
        fin>>v[i];
    for(int i=1;i<=n;++i)
        for(int j=1;j<=n;++j)
            for(int k=1;k<=n;++k){
                w=v[i]+v[j]+v[k];
                hash1[w].x=i;
                hash1[w].y=j;
                hash1[w].z=k;
            }
    for(int i=1;i<=n;++i)
        for(int j=1;j<=n;++j)
            for(int k=1;k<=n;++k){
                int w=S-v[i]-v[j]-v[k];
                if(hash1[w].x){
                    tri w=hash1[S-v[i]-v[j]-v[k]];
                        fout<<v[i]<<' '<<v[j]<<' '<<v[k]<<' '<<v[w.x]<<' '<<v[w.y]<<' '<<v[w.z]<<'\n';
                return 0;}
            }

    fout<<-1<<endl;
    return 0;
}