Pagini recente » Istoria paginii utilizator/robert210799 | Istoria paginii utilizator/ioanteofil | Istoria paginii utilizator/maximusfww | Diferente pentru onis-2015/solutii-runda-1 intre reviziile 106 si 51 | Cod sursa (job #202236)
Cod sursa(job #202236)
#include<iostream>
#include<map>
using namespace std;
int num[101];
int main(void)
{
freopen("loto.in", "r", stdin);
freopen("loto.out", "w", stdout);
int n, s;
cin >> n;
cin >> s;
for(int i=0;i<n;++i)
{
cin >> num[i];
}
map<int, int> sume;
for(int i=0;i<n;++i)
{
for(int j=0;j<n;++j)
{
for(int k=n-1;k>=0;--k)
{
sume.insert(make_pair(num[i]+num[j]+num[k], i*100*100 + j*100 + k));
int sp = s-(num[i]+num[j]+num[k]);
map<int, int>::iterator iter = sume.find(sp);
if(iter != sume.end())
{
int b = iter->second;
int i1 = b / (100*100);
b %= 100*100;
int i2 = b / 100;
b %= 100;
int i3 = b;
cout << num[i] << " " << num[j] << " " << num[k] << " " << num[i1] << " " << num[i2] << " " << num[i3] << endl;
return 0;
}
}
}
}
cout << "-1\n";
return 0;
}