Pagini recente » Cod sursa (job #2524903) | Cod sursa (job #1396462) | Cod sursa (job #3153272) | Cod sursa (job #3133243) | Cod sursa (job #1218415)
#include<fstream>
#include<vector>
using namespace std;
ifstream cin("oite.in");
ofstream cout("oite.out");
const int P = 7919;
long long n,l,i,j,a[1050],res=0;
vector< pair<long,long> > v[P];
int main()
{
cin>>n>>l;
for (i=1;i<=n;i++) cin>>a[i];
for (i=1;i<n;i++)
for (j=i+1;j<=n;j++)
v[(a[i]+a[j])%P].push_back(make_pair(a[i]+a[j],i));
for (i=1;i<n;i++)
for (j=i+1;j<=n;j++) {
int x = (l - a[i] - a[j]), y=x % P;
if (x<0) continue;
for (int k=0;k<v[y].size();k++)
if (v[y][k].first==x && j<v[y][k].second)
++res;
}
cout<<res;
return 0;
}