Pagini recente » Cod sursa (job #1358302) | Cod sursa (job #996638) | Cod sursa (job #2499981) | Cod sursa (job #2874341) | Cod sursa (job #1701871)
#include <iostream>
#include<fstream>
#include<vector>
#include<algorithm>
#define mod 99713
using namespace std;
vector<int> v[mod+5],x[mod+5],y[mod+5],z[mod+5];
int key,aux,a[105],n,s,val,fix;
int finds(int a)
{
key=a%mod;
fix=v[key].size();
for(int f=0;f<fix;f++)
{
if(v[key][f]==a) return f;
}
return -1;
}
inline void inserts(int m,int b,int c,int d)
{
key=m%mod;
v[key].push_back(m);
x[key].push_back(b);
y[key].push_back(c);
z[key].push_back(d);
}
int main()
{
ifstream f("loto.in");
ofstream g("loto.out");
f>>n>>s;
for(int i=1;i<=n;i++)
f>>a[i];
for(int i=1;i<=n;i++)
for(int j=i;j<=n;j++)
for(int k=j;k<=n;k++)
{
val=a[i]+a[j]+a[k];
if(finds(val)==-1)
{
inserts(val,a[i],a[j],a[k]);
}
aux=finds(s-val);
if(aux!=-1)
{
key=(s-val)%mod;
g<<a[i]<<' '<<a[j]<<' '<<a[k]<<' '<<x[key][aux]<<' '<<y[key][aux]<<' '<<z[key][aux];
return 0;
}
}
g<<"-1";
return 0;
}