Pagini recente » Cod sursa (job #70403) | Cod sursa (job #849698) | Cod sursa (job #1980974) | Cod sursa (job #103136) | Cod sursa (job #2217175)
#pragma GCC optimize("03")
#include <bits/stdc++.h>
using namespace std;
long long ans;
int n, l, a[1100];
unordered_map <int,int> M; //perechi cate 2
int main(){
freopen("oite.in", "r", stdin);
freopen("oite.out", "w", stdout);
scanf("%d%d", &n, &l);
for (int i=1; i<=n; i++) scanf("%d", &a[i]);
for (int i=3; i<n; i++){
for (int j=1; j<i-1; j++) M[a[i-1] + a[j]]++;
for (int j=i+1; j<=n; j++)
if (l - a[i] - a[j] >= 0) ans += M[l - a[i] - a[j]];
}
cout << ans;
return 0;
}