Cod sursa(job #1089019)

Utilizator Mitsa3Neamt Mihai Mitsa3 Data 21 ianuarie 2014 09:26:59
Problema Loto Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.4 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cstdlib>
using namespace std;
ifstream fin("loto.in");
ofstream fout("loto.out");
#define MAX 103
int a[MAX], v[MAX];
int main()
{
    int n, s, k = 1;
    fin >> n >> s;
    for(int i = 1; i<=n; i++)
        fin >> a[i];
    for(int i = 1; i<=n; i++)
        for(int j = 1; j<=n; j++)
            for(int z = 1; z<=n; z++) {
                v[k] = a[i] + a[j] + a[z];
                k++;
        }
    k--;
    sort(a+1,a+n+1);
    bool ok=1;
    for(int i = 1; i<=k; i++)
        for(int j = k; j>=i; j--)
        {

            if(s-v[j]==v[i])
            {for(int i1=1; i1<=n; i1++)
                for(int i2=1; i2<=n; i2++)
                    for(int i3=1; i3<=n; i3++)
                        if(a[i1]+a[i2]+a[i3]==v[i]) {
                            fout << a[i1] << " " << a[i2] << " " << a[i3] << " ";
                            goto blajan;
                        }
            blajan:
            for(int i1=1; i1<=n; i1++)
                for(int i2=1; i2<=n; i2++)
                    for(int i3=1; i3<=n; i3++)
                        if(a[i1]+a[i2]+a[i3]==v[j]) {
                            fout << a[i1] << " " << a[i2] <<" " << a[i3] << " ";
                            goto mihai;
                        }

            }

        }
    fout << -1 << "\n";
    mihai:
    return 0;
}