Pagini recente » Cod sursa (job #2232190) | Cod sursa (job #119030) | Cod sursa (job #2390071) | Cod sursa (job #2440860) | Cod sursa (job #925728)
Cod sursa(job #925728)
#include<cstdio>
#include<vector>
#define H 4019
using namespace std;
int c,l,i,j,v[1025],sol,x;
vector<int>hash[H+1];
int main()
{
freopen("oite.in","r",stdin);
freopen("oite.out","w",stdout);
scanf("%d%d", &c, &l);
for(i=1;i<=c;++i)scanf("%d", &v[i]);
for(i=1;i<c;++i)
{
for(j=i+1;j<=c;++j)
if(l-v[i]-v[j]>=0)
{
x=(l-v[i]-v[j])%H;
for(vector<int>::iterator it=hash[x].begin();it!=hash[x].end();++it)
if(*it==l-v[i]-v[j])++sol;
}
for(j=1;j<i;++j)
{
x=(v[i]+v[j])%H;
hash[x].push_back(v[i]+v[j]);
}
}
printf("%d ", sol);
return 0;
}