Cod sursa(job #1284317)

Utilizator dragangabrielDragan Andrei Gabriel dragangabriel Data 6 decembrie 2014 14:00:55
Problema Loto Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.31 kb
#include<fstream>
#include<algorithm>
#include<unordered_map>
#include<vector>
#include<cstring>
#include<iterator>
using namespace std;

int n,i,j,k,rez,sum,temp;
int a[105];
unordered_map<int,vector<int> >mymap;
vector<int>b;
unordered_map<int,vector<int> > :: iterator it,T;

int main()
{
    ifstream f("loto.in");
    ofstream g("loto.out");
    f>>n>>sum;
    for (i=1;i<=n;i++)
        f>>a[i];
    b.push_back(0),b.push_back(0),b.push_back(0);
    for (i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            for(k=1;k<=n;k++)
                {
                    temp=a[i]+a[j]+a[k];
                    if (!mymap[temp].size())
                    {
                        b[0]=a[i];
                        b[1]=a[j];
                        b[2]=a[k];
                        mymap[temp]=b;
                    }
                }
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            for(k=1;k<=n;k++)
            {
                temp=sum-a[i]-a[j]-a[k];
                T=mymap.find(temp);
                if (T!=mymap.end())
                {
                    g<<a[i]<<" "<<a[j]<<" "<<a[k]<<" ";
                    g<<T->second[0]<<" "<<T->second[1]<<" "<<T->second[2]<<"\n";
                    return 0;
                }
            }
    g<<"-1\n";
    return 0;
}