Pagini recente » Cod sursa (job #2202582) | Cod sursa (job #1414295) | Cod sursa (job #2680971) | Cod sursa (job #1372615) | Cod sursa (job #1419091)
#include <fstream>
#include <unordered_map>
#define NMAX 101
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
int v[NMAX], i, j, k, n, x, y, z, s;
struct loto
{
int unu, doi, trei;
};
unordered_map <int, loto> m;
int main()
{
f>>n>>s;
for (i=1; i<=n; ++i)
f>>v[i];
for (i=1; i<=n; ++i)
for (j=1; j<=n; ++j)
for (k=1; k<=n; ++k)
{
loto alfa;
alfa.unu=v[i];
alfa.doi=v[j];
alfa.trei=v[k];
m[v[i]+v[j]+v[k]]=alfa;
}
bool gasit=0;
for (i=1; i<=n; ++i)
for (j=1; j<=n; ++j)
for (k=1; k<=n; ++k)
if (m.find(s-v[i]-v[j]-v[k]) != m.end() )
{
g<<m[v[i]+v[j]+v[k]].unu<<" "<<m[v[i]+v[j]+v[k]].doi<<" "<<m[v[i]+v[j]+v[k]].trei<<" "<<m[s-(v[i]+v[j]+v[k])].unu<<" "<<m[s-(v[i]+v[j]+v[k])].doi<<" "<<m[s-(v[i]+v[j]+v[k])].trei<<'\n';
gasit=1;
return 0;
}
if (!gasit) g<<"-1\n";
return 0;
}