Pagini recente » Cod sursa (job #2324275) | Cod sursa (job #2828127) | Cod sursa (job #2820511) | Cod sursa (job #12210) | Cod sursa (job #2541137)
#include <bits/stdc++.h>
using namespace std;
#define P 123457
ifstream ci("loto.in");
ofstream cou("loto.out");
struct date
{
int sum,x,y,z;
};
int n,a[105],s;
vector<date>v[P];
inline void inserare(date k)
{
int r;
r=k.sum%P;
for(auto i:v[r])
{
if(i.sum==k.sum )
{
return;
}
}
v[r].push_back(k);
}
inline date cautare(date k)
{
int r;
r=k.sum%P;
for(auto i:v[r])
{
if(i.sum==k.sum )
{
return i;
}
}
date k1;
k1.sum=-1;
return k1;
}
void cit()
{
ci>>n>>s;
for(int i=1; i<=n; i++)
{
ci>>a[i];
}
}
void rez(){
int s1,i,j,r;
date x,y;
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
for(r=1;r<=n;r++){
x.sum=a[i]+a[j]+a[r];
x.x=a[i];
x.y=a[j];
x.z=a[r];
inserare(x);
}
}
}
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
for(r=1;r<=n;r++){
x.sum=s-(a[i]+a[j]+a[r]);
x.x=a[i];
x.y=a[j];
x.z=a[r];
if(x.sum>=0){
y=cautare(x);
//cout<<x.sum<<" "<<y.sum<<" "<<s<<"\n";
if(y.sum!=-1){
cou<<a[i]<<" "<<a[j]<<" "<<a[r]<<" "<<y.x<<" "<<y.y<<" "<<y.z;
return;
}
}
}
}
}
cou<<"-1";
}
int main()
{
cit();
rez();
return 0;
}