Cod sursa(job #1368334)

Utilizator badea_adi1999Badea Adrian Catalin badea_adi1999 Data 2 martie 2015 16:21:22
Problema Loto Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.12 kb
#include <fstream>
#include <vector>
#define nmax 105
#define hash 66013
using namespace std;
ifstream f("loto.in");
ofstream g("loto.out");
int n,s,s1,v[nmax];
struct suma {int i;int j;int k;};
suma t;
vector <suma> h[hash];
vector <suma> :: iterator it ;

int main()
{
    int i,j,k;
    f>>n>>s;
    for (i=1;i<=n;i++)
        f>>v[i];
    for (i=1;i<=n;i++)
        for (j=1;j<=n;j++)
            for (k=1;k<=n;k++) {
                    t.i=i;
                    t.j=j;
                    t.k=k;
                    h[(v[i]+v[j]+v[k])%hash].push_back(t);
            }
    for (i=1;i<=n;i++)
        for (j=1;j<=n;j++)
            for (k=1;k<=n;k++) {
                    s1=s-v[i]-v[j]-v[k];
                    it=h[s1%hash].begin();
                    for (;it!=h[s1%hash].end();it++) {
                        t=*it;
                        if (v[t.i]+v[t.j]+v[t.k]==s1) {
                             g<<i<<' '<<j<<' '<<k<<' '<<t.i<<' '<<t.j<<' '<<t.k<<'\n';
                             return 0;
                        }
                    }
            }
    g<<-1<<'\n';
    return 0;
}