Pagini recente » Cod sursa (job #1876181) | Cod sursa (job #324730) | Cod sursa (job #1946600) | Cod sursa (job #1503117) | Cod sursa (job #779899)
Cod sursa(job #779899)
#include <fstream>
#include <algorithm>
using namespace std;
int a[101], sum[1000001], unu[1000001], doi[1000001], trei[1000001];
int n, s, i, j, k, v, r[7];
bool ok;
int main()
{
ifstream f("loto.in");
ofstream g("loto.out");
f>>n>>s;
for(i=1; i<=n; i++)
{
f>>a[i];
}
//sort(a+1, a+n+1);
for(i=1; i<=n; i++)
{
for(j=1; j<=n; j++)
{
for(k=1; k<=n; k++)
{
v++;
sum[v]=a[i]+a[j]+a[k];
unu[v]=a[i];
doi[v]=a[j];
trei[v]=a[k];
}
}
}
sort(sum+1, sum+v+1);
for(i=1; i<=v; i++)
{
if(s-sum[i]>=0)
{
if(binary_search(sum+1, sum+v+1, s-sum[i]))
{
ok=true;
int lb=lower_bound(sum+1, sum+v+1, s-sum[i])-sum;
r[1]=unu[i];r[2]=doi[i];r[3]=trei[i];r[4]=unu[lb];r[5]=doi[lb];r[6]=trei[lb];
break;
}
}
}
if(ok)
{
for(i=1; i<=6; i++)
{
g<<r[i]<<" ";
}
}
else
g<<-1;
}