Pagini recente » Cod sursa (job #1543060) | Cod sursa (job #306317) | Cod sursa (job #199709) | Cod sursa (job #2683232) | Cod sursa (job #1403347)
#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)
{
for (j1=0;j1<3;j1++)
g<<r[i].e[j1]<<' '<<r[j].e[j1]<<' ';
}
}
g<<-1;
return 0;
}