Cod sursa(job #1489182)

Utilizator badea_adi1999Badea Adrian Catalin badea_adi1999 Data 20 septembrie 2015 18:48:44
Problema Oite Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <fstream>
#include <vector>
#define nmax 1026
#define hashing 6013
using namespace std;
ifstream f("oite.in");
ofstream g("oite.out");
vector <int> v[hashing];
int n,m,l,x[nmax];
int sol;

inline void adding(int x)
{
    v[x%hashing].push_back(x);
}
inline void searching(int x)
{
    int i,y=x%hashing;
    for (i=0;i<v[y].size();i++)
        if (v[y][i]==x)
            sol++;

}
void solve()
{
    int i,j,k;
    for (i=1;i<=n;i++) {
        for (j=i+1;j<=n;j++) {

            k=l-x[i]-x[j];
            if (k>0)
                searching(k);
        }
        for (j=1;j<i;j++)
            adding(x[i]+x[j]);

    }
    g<<sol<<'\n';
}

int main()
{
    int i,j;
    f>>n>>l;
    for (i=1;i<=n;i++)
        f>>x[i];

    solve();


    return 0;
}