Cod sursa(job #923943)

Utilizator tudgal1001Profir Tudor tudgal1001 Data 23 martie 2013 23:20:07
Problema Loto Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 1 kb
#include<cstdio>
#include<set>
using namespace std;

struct ss { int sum,a,b,c; };
struct comp
{
    bool operator() (const ss& lhs, const ss& rhs) const
    { return lhs.sum<rhs.sum; };
};

set<ss,comp> sume;
ss aux;
int n,v[105];

void proces ()
{
    int i,j,k;
    for (i=1; i<=n; i++)
        for (j=1; j<=n; j++)
            for (k=1; k<=n; k++)
            {
                aux.sum=v[i]+v[j]+v[k];
                aux.a=v[i], aux.b=v[j], aux.c=v[k];
                sume.insert(aux);
            }
}

int main ()
{
    int s,i;
    freopen("loto.in","r",stdin);
    freopen("loto.out","w",stdout);
    scanf("%d%d",&n,&s);
    for (i=1; i<=n; i++)
        scanf("%d",&v[i]);
    proces();
    set<ss>::iterator it,ff;
    for (it=sume.begin(); it!=sume.end(); ++it)
    {
        aux.sum=s-(it->sum);
        ff=sume.find(aux);
        if (ff!=sume.end())
        {
            printf("%d %d %d %d %d %d\n",it->a,it->b,it->c,ff->a,ff->b,ff->c);
            return 0;
        }
    }
    printf("-1\n");
    return 0;
}