Cod sursa(job #2007683)

Utilizator StefanIonescuStefan Ionescu StefanIonescu Data 3 august 2017 18:26:48
Problema Loto Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.09 kb
#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]);
    }
}