Pagini recente » Cod sursa (job #692413) | Cod sursa (job #422367) | Cod sursa (job #3620) | Cod sursa (job #2989634) | Cod sursa (job #976422)
Cod sursa(job #976422)
#include <fstream>
#include <vector>
#define Mod 666013
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
struct num
{
int s,x,y;
};
vector <num> H[Mod];
vector <num> :: iterator it;
vector <int> a;
int i,j,l,n,Sum,S,s1,ind,k,v[103],z;
bool ok;
int main ()
{
f>>n>>S;
num t;
for (i=1; i<=n; i++)
f>>v[i];
for (i=1; i<=n; i++)
for (j=1; j<=n; j++)
for (l=1; l<=n; l++)
{
s1=v[i]+v[j]+v[l];
a.push_back(s1);
a.push_back(v[i]);
a.push_back(v[j]);
a.push_back(v[l]);
t.s=s1;
t.x=v[i];
t.y=v[j];
ind=s1%Mod;
H[ind].push_back(t);
}
for (i=0; i<=a.size(); i=i+4)
{
s1=a[i];
k=S-s1;
ind=k%Mod;
for (it=H[ind].begin(); it!=H[ind].end(); it++)
{
if ((*it).s==k)
{
g<<(*it).x<<' '<<(*it).y<<' '<<(*it).s-(*it).x-(*it).y<<' '<<a[i+1]<<' '<<a[i+2]<<' '<<a[i+3];
ok=true;
break;
}
}
if (ok) break;
}
if (!ok) g<<"-1";
return 0;
}