Pagini recente » Cod sursa (job #728640) | Istoria paginii runda/cerculdeinfo-lectia1-hashuri.rabinkarp/clasament | Cod sursa (job #244976) | Cod sursa (job #579076) | Cod sursa (job #1776450)
#include <bits/stdc++.h>
#define MOD 666013
using namespace std;
int n,s,i,v[1030],sol,j;
vector<int>hs[MOD+10];
int main()
{
freopen("oite.in","r",stdin);
freopen("oite.out","w",stdout);
scanf("%d%d",&n,&s);
for(i=1; i<=n; ++i)
scanf("%d",&v[i]);
for(i=1; i<=n; ++i)
{
for(j=i+1; j<=n; ++j)
if(hs[(s-v[i]-v[j])%MOD].size()!=0)sol+=hs[(s-v[i]-v[j])%MOD].size();
for(j=1; j<i; ++j)
hs[(v[i]+v[j])%MOD].push_back((s-v[i]-v[j])%MOD);
}
printf("%d\n",sol);
return 0;
}