Pagini recente » Cod sursa (job #2284318) | Cod sursa (job #2607826) | Cod sursa (job #1547623) | Cod sursa (job #646477) | Cod sursa (job #856394)
Cod sursa(job #856394)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream ka("loto.in");
ofstream ki("loto.out");
struct asd
{
int a, b, c, sum;
}
s[500001];
bool comp(asd a, asd b)
{
return a.sum < b.sum;
}
long int v[109],S,n,nr,low,high;
int main()
{
ka>>n>>S;
for(int i=1;i<=n;i++)
{
ka>>v[i];
}
for(int k=1;k<=n;k++)
{
for(int j=k;j<=n;j++)
{
for(int l=j;l<=n;l++)
{
s[++nr].sum=v[k]+v[j]+v[l];
s[nr].a=v[k];
s[nr].b=v[j];
s[nr].c=v[l];
}
}
}
sort(s+1,s+nr+1,comp);
low=1;high=nr;
while(low<=high)
{
if((s[low].sum+s[high].sum)>S)
high--;
else if((s[low].sum+s[high].sum)<S)
low++;
else break;
}
if(low>high)
ki<<"-1";
else
ki<<s[low].a<<" "<<s[low].b<<" "<<s[low].c<<" "<<s[high].a<<" "<<s[high].b<<" "<<s[high].c;
ka.close();
ki.close();
return 0;
}