Pagini recente » Cod sursa (job #1119132) | Cod sursa (job #1635649) | Cod sursa (job #1600617) | Rating Olaru Amelia (Vespa) | Cod sursa (job #1467356)
#include <fstream>
#include <algorithm>
#include <bitset>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int v[8],n,s,a[102],i,j,k;
bitset<600000001> b;
void afis(int s)
{
for(i=1;i<=n;i++)
for(j=i;a[i]+a[j]<s && j<=n;j++)
for(k=j;a[i]+a[j]+a[k]<=s && k<=n;k++)
if(a[i]+a[j]+a[k]==s)
{
fout<<i<<' '<<j<<' '<<k<<' ';
return;
}
}
int main()
{
fin>>n>>s;
for(int i=1;i<=n;i++)
fin>>a[i];
sort(a+1,a+n+1);
for(int i=1;i<=n;i++)
for(j=i;a[i]+a[j]<s && j<=n;j++)
for(k=j;a[i]+a[j]+a[k]<s && k<=n;k++)
b[a[i]+a[j]+a[k]] = 1;
for(int i=1;i<s;i++)
if(b[i]==1 && b[s-i]==1)
{
afis(i);
afis(s-i);
return 0;
}
fout<<-1;
return 0;
}