Cod sursa(job #922368)

Utilizator valentina506Moraru Valentina valentina506 Data 22 martie 2013 09:26:22
Problema Oite Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<fstream>
#include<vector>
#define mod 4013
using namespace std;
ofstream g("oite.out");
int n,i,j;
unsigned long m,a[1025],s,x,sol;
vector<unsigned long> h[mod+2];
int cauta(int x)
{
    int nr=0, val=x%mod;
    for(int l=0;l<h[val].size();++l)
    if(h[val][l]==x)
    ++sol;
}
int main()
{
    ifstream f("oite.in");

    f>>n>>m;
    for(i=1;i<=n;++i)
    f>>a[i];
    sol=0;
    for(i=1;i<n;++i)
    {
        for(j=i+1;j<=n;++j)
        {
        s=a[i]+a[j];
        if(s>0)
        cauta(m-s);
        }
        for(j=1;j<i;++j)
        {
            s=(a[i]+a[j]);
            h[s%mod].push_back(s);
        }

    }
    g<<sol;
    return 0;
}