#include<bits/stdc++.h>
using namespace std;
int ans(vector<int>& v, int k) {
int c = 0;
int left = 0;
int right = v.size() - 1;
while(left < right) {
if(v[left] + v[right] <= k) {
c += (right - left);
left++;
} else {
right--;
}
}
return c;
}
int main() {
int n;
cin >> n;
vector<int> v(n);
for(int i = 0; i < n; i++) {
cin >> v[i];
}
int k;
cin >> k;
sort(v.begin(), v.end());
cout << ans(v, k) << endl;
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBhbnModmVjdG9yPGludD4mIHYsIGludCBrKSB7CiAgICBpbnQgYyA9IDA7CiAgICBpbnQgbGVmdCA9IDA7CiAgICBpbnQgcmlnaHQgPSB2LnNpemUoKSAtIDE7CiAgICAKICAgIHdoaWxlKGxlZnQgPCByaWdodCkgewogICAgICAgIGlmKHZbbGVmdF0gKyB2W3JpZ2h0XSA8PSBrKSB7CiAgICAgICAgICAgIGMgKz0gKHJpZ2h0IC0gbGVmdCk7CiAgICAgICAgICAgIGxlZnQrKzsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICByaWdodC0tOyAKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gYzsKfQoKaW50IG1haW4oKSB7CiAgICBpbnQgbjsgCiAgICBjaW4gPj4gbjsKICAgIAogICAgdmVjdG9yPGludD4gdihuKTsKICAgIGZvcihpbnQgaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICBjaW4gPj4gdltpXTsKICAgIH0KCiAgICBpbnQgazsgCiAgICBjaW4gPj4gazsKICAgIHNvcnQodi5iZWdpbigpLCB2LmVuZCgpKTsgCiAgICAKICAgIGNvdXQgPDwgYW5zKHYsIGspIDw8IGVuZGw7CiAgICByZXR1cm4gMDsKfQ==