Cod sursa(job #1711770)

Utilizator danbuicaDan Buica danbuica Data 1 iunie 2016 09:51:36
Problema Loto Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream f("loto.in");
ofstream g("loto.out");

#define MAX 1000001

int v[101],v2[MAX];

void afisare(int n,int a)
{
     int i, j, k;
     for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            for(k=1;k<=n;k++)
            if(v[i]+v[j]+v[k]==a)
     {
         g<<v[i]<<" "<<v[j]<<" "<<v[k]<<" ";
         return;
     }
}
int main()
{
    int i,j,k,n,s,l;
    f>>n>>s;
    for(i=0;i<n;i++)
        f>>v[i];
    l=0;
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            for(k=1;k<=n;k++)
    {
        v2[++l]=v[i]+v[j]+v[k];
    }
    sort(v2+1,v2+l+1);
    j=l;
    k=1;

    while(k<=j)
    {
        if(v2[k]+v2[j]==s)
        {
            afisare(n,v2[k]);
            afisare(n,v2[j]);
            return 0;
        }
        else
            if(v2[k]+v2[j]<s)
            k++;
        else
            j--;
    }
    g<<-1;
    return 0;

}