Pagini recente » Cod sursa (job #303353) | Cod sursa (job #1736140) | Cod sursa (job #1446593) | Istoria paginii moisil-2017/solutii | Cod sursa (job #2007683)
#include<iostream>
#include<fstream>
#include<algorithm>
#define maxi 1000001
using namespace std;
int v[maxi],a[101],n,s;
ifstream in("loto.in");
ofstream out("loto.out");
void afisare(int m)
{
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
for(int k=1;k<=n;k++)
{
if(a[i]+a[j]+a[k]==m)
{
out<<a[i]<<" "<<a[j]<<" "<<a[k];
return;
}
}
}
int main()
{
int x=0;
in>>n>>s;
for(int i=1;i<=n;i++)
in>>a[i];
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
for(int k=1;k<=n;k++)
{
x++;
v[x]=a[i]+a[j]+a[k];
}
int st=1,dr=x;
bool ok=true;
while(ok==true and st<dr)
{
if(v[st]+v[dr]==s)
ok=false;
else
{
if(v[st]+v[dr]<s)
st++;
else
dr--;
}
}
if(ok==true)
out<<-1;
else
{
afisare(v[st]);
out<<" ";
afisare(v[dr]);
}
}