Pagini recente » Cod sursa (job #2304407) | Cod sursa (job #1241019) | Cod sursa (job #2847041) | Cod sursa (job #1983361) | Cod sursa (job #2892169)
#include <fstream>
#include <unordered_map>
#include <vector>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
unordered_map <int, pair<int, int>> sume;
vector <int> bile;
int nrBile, sum, i, j, k, sumacurenta;
int main()
{
fin >> nrBile >> sum;
bile.assign(nrBile, 0);
for (i = 0; i < nrBile; i++)
fin >> bile[i];
for (i = 0; i< nrBile; i++)
for (j = 0; j < nrBile; j++)
for (k = 0; k < nrBile; k++)
sume[bile[i]+bile[j]+bile[k]] = make_pair(bile[i], bile[j]);
for (i = 0; i< nrBile; i++)
for (j = 0; j < nrBile; j++)
for (k = 0; k < nrBile; k++)
if (sume.find(sum-bile[i]-bile[j]-bile[k]) != sume.end())
{
sumacurenta = sum-bile[i]-bile[j]-bile[k];
fout << bile[i] << ' ' << bile[j] << ' ' << bile[k] << ' ' << sume[sumacurenta].first << ' ' << sume[sumacurenta].second << ' ' << sumacurenta-sume[sumacurenta].first -sume[sumacurenta].second;
return 0;
}
fout << -1;
return 0;
}