Pagini recente » Cod sursa (job #1960279) | Cod sursa (job #2130434) | Cod sursa (job #2773902) | Cod sursa (job #3162312) | Cod sursa (job #1403298)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ("loto.in");
ofstream g ("loto.out");
int sw=1,i,v[105],q[10],n,s,z,j,j1;
struct aaa
{
int x,e[3];
}r[1000000];
void tip()
{
int i;
for (i=1;i<=6;i++)
g<<v[q[i]]<<' ';
}
int cl(int x,int n)
{
int i;
for (i=1;i<=n;i++)
if (r[i].x==x) return 1;
return 0;
}
void Back (int k,int sum)
{
int i;
for (i=q[k-1];i<=n&&sw;i++)
{
sum+=v[i];
q[k]=i;
if (k<3)
Back (k+1,sum);
else
{
if (cl(sum,z)==0)
{
z++;
r[z].x=sum;
for (int j=0;j<3;j++)
{
r[z].e[j]=v[q[j+1]];
}
}
}
sum-=v[i];
}
}
int main()
{
f>>n>>s;
for (i=1;i<=n;i++)
f>>v[i];
q[0]=1;
Back(1,0);
//cout<<z;
for (i=1;i<z;i++)
{
for (j=i+1;j<=z;j++)
if (s==r[i].x+r[j].x)
{
//cout<<r[i].x<<' '<<r[j].x<<'\n';
for (j1=0;j1<3;j1++)
g<<r[i].e[j1]<<' '<<r[j].e[j1]<<' ';
return 0;
}
}
g<<-1;
return 0;
}