Pagini recente » Cod sursa (job #236460) | Cod sursa (job #1107659) | Cod sursa (job #1900244) | Cod sursa (job #3347407) | Cod sursa (job #3317098)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
int n,s;
struct da
{
int a,b,c;
};
unordered_map<int,da> mapa;
int v[103];
bool ok;
int main()
{
fin>>n>>s;
for (int i=1;i<=n;i++)
fin>>v[i];
sort(v+1,v+n+1);
for (int i=1;i<=n && !ok;i++)
{
for (int j=i;j>=1;j--)
{
for (int k=j;k>=1;k--)
{
mapa[v[i]+v[j]+v[k]]={i,j,k};
}
}
for (int j=i;j<=n && !ok;j++)
{
for (int k=j;j<=n && !ok;j++)
{
int sum=v[i]+v[j]+v[k];
if (mapa.find(s-sum)!=mapa.end())
ok=true,fout<<mapa[s-sum].c<<" "<<mapa[s-sum].b<<" "<<mapa[s-sum].a<<" "<<v[i]<<" "<<v[j]<<" "<<v[k];
}
}
if (ok) break;
}
if (!ok) fout<<-1;
return 0;
}