Pagini recente » Cod sursa (job #3177452) | Cod sursa (job #2653813) | Cod sursa (job #2043973) | Cod sursa (job #2366998) | Cod sursa (job #869981)
Cod sursa(job #869981)
#include<cstdio>
#include<algorithm>
using namespace std;
int v[101],p[1000001];
int main()
{
freopen("loto.in","r",stdin);
freopen("loto.out","w",stdout);
int n,i,j,s,poz,ds,dd,r=0,ok,k;
scanf("%d%d",&n,&s);
for(i=1;i<=n;++i)
scanf("%d",&v[i]);
for(i=1;i<=n;++i)
for(j=i;j<=n;++j)
for(k=j;k<=n;++k)
p[++p[0]]=v[i]+v[j]+v[k];
sort(p+1,p+p[0]+1);
for(i=1;i<=p[0];++i)
{
poz=lower_bound(p+i+2,p+p[0]+1,s-p[i])-p-1;
if(p[poz+1]==s-p[i])
{
ds=i;
dd=poz+1;
break;
}
}
ok=0;
for(i=1;i<=n&&ok==0;++i)
for(j=i;j<=n&&ok==0;++j)
for(k=j;k<=n;++k)
{
r=v[i]+v[j]+v[k];
if(r==p[ds])
{
ok=1;
printf("%d %d %d ",v[i],v[j],v[k]);
break;
}
}
ok=0;
for(i=1;i<=n&&ok==0;++i)
for(j=i;j<=n&&ok==0;++j)
for(k=j;k<=n;++k)
{
r=v[i]+v[j]+v[k];
if(r==p[dd])
{
ok=1;
printf("%d %d %d ",v[i],v[j],v[k]);
break;
}
}
return 0;
}