Pagini recente » Cod sursa (job #2416783) | Cod sursa (job #2620011) | Cod sursa (job #2008877) | Cod sursa (job #1670141) | Cod sursa (job #2443100)
#include <bits/stdc++.h>
using namespace std;
ifstream in("oite.in");
ofstream out("oite.out");
unordered_map<int,int> ap;
int v[1<<10+5];
int main()
{
int n,s,ans=0;
in >> n >> s;
for (int i = 0; i<n; i++)
in >> v[i];
sort(v,v+n);
for (int i = 0; i<n; i++)
{
for (int j = i+1; j<n; j++)
if (v[i]+v[j]<=s)
ans+=ap[s-v[i]-v[j]];
else
break;
for (int j = 0; j<i; j++)
if (v[i]+v[j]<=s)
ap[v[i]+v[j]]++;
else
break;
}
out << ans;
}