Pagini recente » Cod sursa (job #1922474) | Cod sursa (job #2397034) | Cod sursa (job #2946782) | Cod sursa (job #2662058) | Cod sursa (job #2152399)
#include <unordered_map>
#include <algorithm>
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("oite.in");
ofstream out("oite.out");
const int NMAX = 2000;
int n, s, res;
int a[1 + NMAX];
unordered_map < int, short > sums;
int main()
{
in >> n >> s;
for(int i = 1 ; i <= n; i++)
in >> a[i];
sort(a + 1, a + n + 1);
for(int i = 1; i <= n; i++) {
for(int j = i + 1; j <= n; j++)
res += sums[s - a[i] - a[j]];
for(int j = 1; j < i; j++)
sums[a[i] + a[j]]++;
}
out << res;
in.close();
out.close();
}