Pagini recente » Cod sursa (job #956829) | Cod sursa (job #1928702) | Cod sursa (job #1292358) | Cod sursa (job #2223513) | Cod sursa (job #3239574)
#include <fstream>
#include <algorithm>
#include <queue>
#include <set>
#include <unordered_map>
using namespace std;
ifstream cin("oite.in");
ofstream cout("oite.out");
int n,L,v[1027];
long long sol;
unordered_map<long long,int>mp;
int main()
{
cin>>n>>L;
for(int i=1; i<=n; i++)
cin>>v[i];
sort(v+1,v+n+1);
for(int i=1; i<=n; i++)///a treia oaie
{
for(int j=i+1; j<=n; j++)///a patra oaie
if(L-v[i]-v[j]>=0)
{
int aux=L-v[i]-v[j];
if(mp.find(aux)!=mp.end())
sol+=mp[aux];
}
for(int j=1; j<i; j++)
mp[v[i]+v[j]]++;
}
cout<<sol;
return 0;
}