Pagini recente » Cod sursa (job #98743) | Istoria paginii runda/concurs_info/clasament | Cod sursa (job #2308484) | Cod sursa (job #1687345) | Cod sursa (job #2003045)
#include <bits/stdc++.h>
using namespace std;
ifstream f("oite.in");
ofstream g("oite.out");
map <int,int> H;
int n,S,i,j,v[2000];
long long rs=0;
int main()
{
f>>n>>S;
for(i=0; i<n; i++) f>>v[i];
sort(v, v+n);
for(i=0; i<n; i++)
{
for(j=i+1; j<n; j++)
{
map <int,int>::iterator it=H.find(S-v[i]-v[j]);
if (it!=H.end()) rs+=it->second;
}
for(j=0; j<i; j++)
{
H[v[i]+v[j]]++;
}
}
g<<rs<<'\n';
}