Cod sursa(job #1434843)

Utilizator Boss4321Andrei Theodore Marginean Boss4321 Data 11 mai 2015 15:54:35
Problema Loto Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <cstdio>
#include <algorithm>
using namespace std;
struct LOTO
{
    int sum,a,b,c;
};
bool sortare(LOTO x,LOTO y)
{
    return x.sum<y.sum;
}
LOTO v[1000001];
long long nr[105];
int main()
{
    freopen("loto.in","r",stdin);
    freopen("loto.out","w",stdout);
    int n,m,i,j,k,l=0;
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
        scanf("%d",&nr[i]);
    for(i=1; i<=n; i++)
        for(j=i; j<=n; j++)
            for(k=j; k<=n; k++)
            {
                v[++l].sum=nr[i]+nr[j]+nr[k];
                v[l].a=i;
                v[l].b=j;
                v[l].c=k;
            }
    sort(v+1,v+n+1,sortare);
    int p=1,u=l;
    while(p<=u)
    {
        if(v[p].sum+v[u].sum>m)
            u--;
        else if(v[p].sum+v[u].sum<m)
            p++;
        else
            break;
    }
    if(p>u)
        printf("-1");
    else
        printf("%d %d %d %d %d %d",v[p].a,v[p].b,v[p].c,v[u].a,v[u].b,v[u].c);
}