Cod sursa(job #1744098)

Utilizator usureluflorianUsurelu Florian-Robert usureluflorian Data 19 august 2016 12:10:34
Problema Loto Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
int a[101],b[1000009],n,m,i,j,k,s,s1,s2,sol[7],p;
int main()
{
     f>>n>>s;
     for(i=1;i<=n;i++) f>>a[i];
     for(i=1;i<=n;i++)
        for(j=i;j<=n;j++)
            for(k=j;k<=n;k++)
                b[++m]=a[i]+a[j]+a[k];
     sort(b+1,b+m+1);
     for(i=1;i<=m;i++)
      if(binary_search(b+1,b+m+1,s-b[i]))
      {
            s1=b[i];
            s2=s-b[i];
            break;
      }
     for(i=1;i<=n;i++)
        for(j=i;j<=n;j++)
            for(k=j;k<=n;k++)
            {
                if(a[i]+a[j]+a[k]==s1){
                    sol[1]=a[i];
                    sol[2]=a[j];
                    sol[3]=a[k];
                }
                if(a[i]+a[j]+a[k]==s2){
                    sol[4]=a[i];
                    sol[5]=a[j];
                    sol[6]=a[k];
                }
            }
    if(s1==0 and s2==0)
        g<<-1;
    else{
        for(i=1;i<=6;i++)
            g<<sol[i]<<" ";
    }
    return 0;
}