Pagini recente » Cod sursa (job #2566338) | Cod sursa (job #926702) | Cod sursa (job #1354213) | Istoria paginii runda/zz/clasament | Cod sursa (job #2140106)
#include <bits/stdc++.h>
#define NMAX 1030
using namespace std;
int main() {
freopen("oite.in", "r", stdin);
freopen("oite.out", "w", stdout);
vector <int> a;
int N, L, sol = 0;
unordered_map <int, int> H;
cin >> N >> L;
a.resize(N);
for (auto &it : a) {
cin >> it;
}
sort(a.begin(), a.end());
for (int i = 2; i < (int)a.size(); ++i) {
for (int j = i - 2; j >= 0; --j) {
++H[a[i - 1] + a[j]];
}
for (int j = i + 1; j < (int)a.size(); ++j) {
if (H.find(L - (a[i] + a[j])) != H.end()) {
sol += H[L - a[j] - a[i]];
}
}
}
cout << sol << '\n';
return 0;
}