Cod sursa(job #1279390)

Utilizator deresurobertoFMI - Deresu Roberto deresuroberto Data 30 noiembrie 2014 11:36:16
Problema Loto Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.13 kb
//Deresu Roberto - FMI
//Re :)
#include<fstream>
#include<map>
#define nx 101
using namespace std;
int n,s,v[nx];

struct numere
{
    int unu,doi,trei;
}a;

map<int,numere> mymap;
map<int,numere> :: iterator it;

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

void Cauta()
{
    for(int i=1;i<=n;i++)
        for(int j=i;j<=n;j++)
            for(int k=j;k<=n;k++)
            {
                int sum = s-(v[i]+v[j]+v[k]);

                it = mymap.find(sum);

                if(it != mymap.end())
                {
                    fout<<v[i]<<" "<<v[j]<<" "<<v[k]<<" "<<it->second.unu<<" "<<it->second.doi<<" "<<it->second.trei;
                    return;
                }
            }

    fout<<"-1";
}

int main()
{
    fin>>n>>s;

    for(int i=1;i<=n;i++)
        fin>>v[i];

    for(int i=1;i<=n;i++)
        for(int j=i;j<=n;j++)
            for(int k=j;k<=n;k++)
            {
                a.unu = v[i];
                a.doi = v[j];
                a.trei = v[k];

                mymap.insert(make_pair(v[i]+v[j]+v[k],a));
            }

    Cauta();

    return 0;
}