Pagini recente » Cod sursa (job #1464018) | Cod sursa (job #2266458) | Cod sursa (job #669277) | Cod sursa (job #509981) | Cod sursa (job #675374)
Cod sursa(job #675374)
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
struct date {
int s,x,y,z;
};
vector <date> a[666013];
int v[101];
date cauta(int x)
{
int n,i,k;
date nr;
k=x%666013;
n=int(a[k].size())-1;
for(i=0;i<=n;i++)
if(a[k][i].s==x)
return a[k][i];
nr.s=-1;
return nr;
}
int main ()
{
int n,i,j,k,sum,c,s;
date nr;
ifstream f("loto.in");
ofstream g("loto.out");
f>>n>>sum;
for(i=1;i<=n;i++)
f>>v[i];
f.close();
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
for(k=1;k<=n;k++) {
s=v[i]+v[j]+v[k];
if(s<=sum) {
nr.s=s;
nr.x=v[i];
nr.y=v[j];
nr.z=v[k];
a[s%666013].push_back(nr);
}
}
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
for(k=1;k<=n;k++) {
c=sum-(v[i]+v[j]+v[k]);
if(c>=0)
nr=cauta(c);
else nr.s=-1;
if(nr.s!=-1){
g<<v[i]<<" "<<v[j]<<" "<<v[k]<<" "<<nr.x<<" "<<nr.y<<" "<<nr.z;
g.close();
return 0;
}
}
g<<"-1";
g.close();
return 0;
}