Pagini recente » Cod sursa (job #725986) | Cod sursa (job #819756) | Cod sursa (job #316692) | Cod sursa (job #2520608) | Cod sursa (job #14794)
Cod sursa(job #14794)
#include<stdio.h>
#include<stdlib.h>
struct nod { int s,a,b,c; };
int cmp( const void *i, const void *j)
{
nod *ei= (nod*)i, *ej= (nod*)j;
return ei->s - ej->s;
}
int main()
{
int n, sum, v[105], nr=0;
nod x[100*100*100+10];
freopen("loto.in","r",stdin);
scanf("%d %d",&n,&sum);
for(int i=1; i<=n; ++i) scanf("%d",&v[i]);
for(int i1=1; i1<=n; ++i1)
for(int i2=1; i2<=n; ++i2)
for(int i3=1; i3<=n; ++i3) {
x[++nr].s= v[i1]+v[i2]+v[i3];
x[nr].a=i1;
x[nr].b=i2;
x[nr].c=i3;
}
qsort(x, nr, sizeof(nod), cmp);
int p=1, q=nr, ok=0;
while(p<=q) {
if( x[p].s + x[q].s == sum) {ok=1;break;}
if( x[p].s + x[q].s > sum) q--;
else p++;
}
freopen("loto.out","w",stdout);
if(ok) printf("%d %d %d %d %d %d\n",x[p].a,x[p].b,x[p].c,x[q].a,x[q].b,x[q].c);
else printf("-1\n");
return 0;
}