Pagini recente » Cod sursa (job #2798643) | Cod sursa (job #557871) | Cod sursa (job #6938) | Cod sursa (job #2234010) | Cod sursa (job #3128524)
#include <fstream>
#include <unordered_map>
using namespace std;
ifstream in("loto.in");
ofstream out("loto.out");
struct half_sum
{
int num1,num2,num3;
};
int n,v[101];
long long s;
unordered_map<long long, half_sum> m;
int main()
{
in >> n >> s;
for(int i=0;i<n;i++)
in>>v[i];
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
for(int k=0;k<n;k++)
{ long long sum=v[i]+v[j]+v[k];
m[sum].num1=i;
m[sum].num2=j;
m[sum].num3=k;
}
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
for(int k=0;k<n;k++)
{ long long sum=v[i]+v[j]+v[k];
if(m.find(s-sum)!=m.end())
{ out<<v[i]<<" "<<v[j]<<" "<<v[k]<<" "<<v[m[s-sum].num1]<<" "<<v[m[s-sum].num2]<<" "<<v[m[s-sum].num3];
return 0;
}
}
out<<"-1";
return 0;
}