Pagini recente » Cod sursa (job #896402) | Cod sursa (job #613316) | Cod sursa (job #1328152) | Cod sursa (job #1108347) | Cod sursa (job #964638)
Cod sursa(job #964638)
#include<cstdio>
#include<vector>
using namespace std;
const int NMAX = 1030;
const int MOD = 666013;
int N,L,i,j,A[NMAX],sol,sum,R;
vector<int> V[MOD];
int main()
{
freopen("oite.in","r",stdin);
freopen("oite.out","w",stdout);
scanf("%d%d",&N,&L);
for(i=1;i<=N;i++) scanf("%d",&A[i]);
for(i=1;i<=N;i++)
{
for(j=i+1;j<=N;j++)
{
sum=A[i]+A[j];
if(sum>=L) continue;
R=(L-sum)%MOD;
for(vector<int>::iterator it=V[R].begin();it!=V[R].end();it++)
if(*it==L-sum) sol++;
}
for(j=1;j<i;j++)
{
sum=A[i]+A[j];
R=sum%MOD;
V[R].push_back(sum);
}
}
printf("%d\n",sol);
return 0;
}