Pagini recente » Cod sursa (job #1025156) | Cod sursa (job #1495482) | Cod sursa (job #983330) | Cod sursa (job #2106502) | Cod sursa (job #2299898)
#include <fstream>
#include <unordered_map>
using namespace std;
ifstream cin ("loto.in");
ofstream cout ("loto.out");
int v[103],sume[1000003];
unordered_map<int,bool>mp;
int main()
{
int n,s,i,k=0,j,y,s1=-1,ok0=1,ok1=1;
cin>>n>>s;
for(i=1;i<=n;++i)
cin>>v[i];
for(i=1;i<=n;++i)
for(j=i;j<=n;++j)
for(y=j;y<=n;++y)
{
if(mp[v[i]+v[j]+v[y]]==false)
sume[++k]=v[i]+v[j]+v[y];
mp[v[i]+v[j]+v[y]]=true;
}
for(i=1;i<=k;++i)
if(s-sume[i])
s1=sume[i];
if(s1==-1){cout<<s1;return 0;}
for(i=1;i<=n;++i)
for(j=i;j<=n;++j)
for(y=j;y<=n;++y)
{
if(v[i]+v[j]+v[y]==s1 && ok1)
{
cout<<v[i]<<' '<<v[j]<<' '<<v[y]<<' ';
ok1=0;
}
if(v[i]+v[j]+v[y]==s-s1 && ok0)
{
cout<<v[i]<<' '<<v[j]<<' '<<v[y]<<' ';
ok0=0;
}
}
return 0;
}