Pagini recente » Borderou de evaluare (job #1911834) | Cod sursa (job #2958383)
#include<bits/stdc++.h>
using namespace std;
ifstream fin("oite.in");
ofstream fout("oite.out");
#define cin fin
#define cout fout
#define N 200005
#define power 73
#define mod 66666013
#define oo 1e18
int n, k, v[1100], rez;
map < int , int > a;
int main()
{
cin >> n >> k;
for(int i = 1 ; i <= n ; i++)
{
cin >> v[i];
}
sort(v+1,v+n+1);
for(int i = 1 ; i < n ; i++)
{
for(int j = i+1 ; j <= n ; j++)
{
if(v[i]+v[j] > k)break;
rez += a[k-v[i]-v[j]];
}
for(int j = i-1 ; j ; j--)
{
a[v[i]+v[j]]++;
}
}
cout << rez;
return 0;
}