Pagini recente » Cod sursa (job #756782) | Cod sursa (job #2773835) | Cod sursa (job #2348786) | Cod sursa (job #2755284) | Cod sursa (job #2744723)
#include <bits/stdc++.h>
using namespace std;
ifstream F ("loto.in");
ofstream G ("loto.out");
struct suma
{
int t1, t2, t3, stotal;
}suma[100*100*100];
bool cmp(int a, int b)
{
return a<b;
}
int main()
{
int n, s, v[100], p = -1;
F>>n>>s;
for(int i = 0; i < n; i++)
F>>v[i];
sort(v, v + n - 1);
for(int i = 0; i < n; i++)
G<<v[i]<<" ";
for(int i = 0; i < n; i++)
for(int j = i; j < n; j++)
for(int k = j; k < n; k++)
{
p++;
suma[p].t1 = v[i];
suma[p].t2 = v[j];
suma[p].t3 = v[k];
suma[p].stotal = suma[p].t1 + suma[p].t2 + suma[p].t3;
}
int st = 0;
int dr = p - 1;
int ok = 0;
while(st <= dr)
{
if(suma[st].stotal + suma[dr].stotal == s)
{
G<<suma[st].t1<<" "<<suma[st].t2<<" "<<suma[st].t3<<" "<<suma[dr].t1<<" "<<suma[dr].t2<<" "<<suma[dr].t3;
ok = 1;
break;
}
else if(suma[st].stotal + suma[dr].stotal < s)
st++;
else
dr--;
}
if(ok == 0)
G<<-1;
return 0;
}