Pagini recente » Cod sursa (job #29452) | Cod sursa (job #164115) | Cod sursa (job #2769142) | Cod sursa (job #1199582) | Cod sursa (job #2555901)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
int n,s,v[105],i,j,k,m,s1,x,h[10];
ifstream in("loto.in");
ofstream out("loto.out");
struct suma
{
int a,b,val,c;
}w[10005];
int cautarebinara(int x)
{
int st=1,dr=m;
while (st<=dr)
{
int mijl=(st+dr)/2;
if (w[mijl].val==x) {return mijl;}
if (w[mijl].val<x) st=mijl+1;
else dr=mijl-1;
}
return 0;
}
bool comp(suma q, suma r)
{
return (q.val<r.val);
}
int main()
{
in>>n>>s;
for (i=1;i<=n;i++) in>>v[i];
for (i=1;i<=n;i++)
for (j=i;j<=n;j++)
for (k=j;k<=n;k++)
{
s1=j+k+i;
x=s-s1;
int p=cautarebinara(x);//cout<<p;
if (p)
{
h[1]=i;h[2]=j;h[3]=k;h[4]=w[p].a;h[5]=w[p].b;h[6]=w[p].c;
sort(h+1,h+7);
for (int i1=1;i1<=6;i1++) {out<<h[i1]<<" ";}
return 0;
}
else {m++;w[m].val=s1;w[m].a=i;w[m].b=j;w[m].c=k;sort(w+1,w+m+1,comp);
}
}
}