Cod sursa(job #1284293)

Utilizator dragangabrielDragan Andrei Gabriel dragangabriel Data 6 decembrie 2014 13:51:06
Problema Loto Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.33 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,int>mymap;
vector<vector<int> >v;
vector<int>b;
unordered_map<int,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])
                    {
                        b[0]=a[i];
                        b[1]=a[j];
                        b[2]=a[k];
                        v.push_back(b);
                        mymap[temp]=v.size()-1;
                    }
                }
    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<<v[T->second][0]<<" "<<v[T->second][1]<<" "<<v[T->second][2]<<"\n";
                return 0;
        }
    }
    g<<"-1\n";
    return 0;
}