Pagini recente » Cod sursa (job #1061914) | Cod sursa (job #3256683) | Cod sursa (job #2747155) | Cod sursa (job #1219713) | Cod sursa (job #779827)
Cod sursa(job #779827)
#include <fstream>
#include <algorithm>
using namespace std;
int main()
{
int n, s, a[101], j, i, k, sum, r[7];
bool ok=false;
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++)
{
sum=a[i]+a[j]+a[k];
r[1]=a[i];
r[2]=a[j];
r[3]=a[k];
int z=3;
while(sum<=s)
{
int lb=lower_bound(a+1, a+n+1, s-sum)-a;
if(a[lb]<s-sum || a[lb]>s-sum)
lb--;
z++;
r[z]=a[lb];
sum+=r[z];
if(sum==s && z==6)
{
ok=true;
break;
}
else if(sum>s || z>6)
break;
}
if(ok)
break;
}
if(ok)
break;
}
if(ok)
break;
}
if(ok)
{
for(i=1; i<=6; i++)
{
g<<r[i]<<" ";
}
}
else
g<<-1;
}