Cod sursa(job #1318440)

Utilizator diana-t95FMI Tudoreanu Diana Elena diana-t95 Data 15 ianuarie 2015 22:44:41
Problema Loto Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <iostream>
#include <unordered_map>
#include <fstream>
using namespace std;
struct comb
{
    int a, b, c;
};
unordered_map<int, comb> M;
int n, s, a[101];
int main()
{
    ifstream f("loto.in");
    ofstream g("loto.out");
    f>>n>>s;
    int i, j, k;
    comb x;
    for (i=1;i<=n;i++)
        f>>a[i];
    for (i=1;i<=n;i++)
        for (j=i;j<=n;j++)
            for (k=j;k<=n;k++)
                {
                    x.a=a[i];
                    x.b=a[j];
                    x.c=a[k];
                    M.insert(make_pair(a[i]+a[j]+a[k], x));
                }
    unordered_map<int, comb>::iterator it, it2;
    bool ok=false;
    for (it=M.begin(); it!=M.end() && !ok; it++)
    {
        it2=M.find(s-it->first);
        if (it2!=M.end())
        {
            g<<it->second.a<<' '<<it->second.b<<' '<<it->second.c<<' ';
            g<<it2->second.a<<' '<<it2->second.b<<' '<<it2->second.c<<'\n';
            ok=true;
        }
    }
    if (ok==false) g<<"-1\n";
}