Cod sursa(job #947714)

Utilizator misinozzz zzz misino Data 8 mai 2013 11:18:18
Problema Oite Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<fstream>
#include<vector>
#define MOD 5000
using namespace std;
ifstream f("oite.in");
ofstream g("oite.out");
int n,i,j,x,y,sol,l,v[1050];
vector<int>hash[MOD];
vector<int>::iterator it;
int main()
{
    f>>n>>l;
    for(i=1;i<=n;++i)
    {
        f>>v[i];
    }
    for(i=1;i<=n;++i)
    {
        for(j=i+1;j<=n;++j)
        if(l-v[i]-v[j]>=0)
        {
            x=l-v[i]-v[j];
            x%=MOD;
            y=l-v[i]-v[j];
            for(it=hash[x].begin();it!=hash[x].end();++it)
            if(*it==y)
            {
                ++sol;
            //g<<i<<' '<<j<<'\n';
            }
        }
        for(j=1;j<i;++j)
        {
            x=(v[i]+v[j])%MOD;
            y=v[i]+v[j];
            hash[x].push_back(y);
        }
    }
    g<<sol<<'\n';
    return 0;
}