#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,c;
ll cun[200002];
ll cun1[200002];
int main()
{
scanf("%lld%lld",&n,&c);
for(register int i=1;i<=n;i++)
{
scanf("%lld",&cun[i]);
cun1[cun[i]]++;
cun[i]-=c;
}
long long da=0;
for(register int i=1;i<=n;i++)
{
da+=cun1[cun[i]];
}
cout<<da;
return 0;
}
/*
以下题解,用的map
#include <iostream>
#include <map>
using namespace std;
typedef long long LL;
LL a[200001];
map<LL,LL> m;//建立一个数字到出现次数的映射 map<num,times>
//A-B=C --> A-C=B
int main() {
int n;
LL c;
LL ans=0;
cin >> n >> c;
for(int i=1;i<=n;i++) {
cin >> a[i];
m[a[i]]++;
a[i]-=c;
}
for(int i=1;i<=n;i++) ans+=m[a[i]];
cout << ans << endl;
return 0;
}*/