Pagini recente » Cod sursa (job #2312954) | Cod sursa (job #3289572) | Cod sursa (job #1970665) | Cod sursa (job #3153922) | Cod sursa (job #428491)
Cod sursa(job #428491)
#include <fstream>
#include <vector>
#include <algorithm>
#include <map>
using namespace std;
ifstream fin ("loto.in");
ofstream fout("loto.out");
map <int, int> viz;
vector<int> v;
int n,S,i,j,k,nr,S1,S2,ok,x;
int main()
{
fin>>n>>S;
for (i=0; i<n; i++)
{
fin>>x;
v.push_back(x);
}
ok=1;
for (i=0; i<n; i++)
for (j=0; j<n; j++)
for (k=0; k<n; k++)
viz[v[i]+v[j]+v[k]] = 1;
for (i=0; i<n&&ok==1; i++)
for (j=0; j<n&&ok==1; j++)
for (k=0; k<n&&ok==1; k++)
if (viz[S-v[i]-v[j]-v[k]] == 1)
{
S1=v[i]+v[j]+v[k];
fout<<v[i]<<' '<<v[j]<<' '<<v[k]<<' ';
S2=S-v[i]-v[j]-v[k];
ok=0;
break;
}
if (ok==0)
{
ok=1;
for (i=0; i<n&&ok==1; i++)
for (j=0; j<n&&ok==1; j++)
for (k=0; k<n&&ok==1; k++)
if (v[i]+v[j]+v[k] == S2)
{
fout<<v[i]<<' '<<v[j]<<' '<<v[k]<<'\n';
ok=0;
break;
}
}
else
fout<<-1<<'\n';
fin.close();
fout.close();
return 0;
}