#include <bits/stdc++.h>
#define FOR(i,a,b) for(int i=(a), _b=(b); i<=_b; ++i)
#define fi first
#define se second
#define el "\n"
#define pb push_back
#define sz(a) (int)(a).size()
#define FILL(a,x) memset(a,x,sizeof(a))
using namespace std;
typedef long long ll;
typedef pair<int,int> ii;
const int N = (int)1e6+3;
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr); cout.tie(nullptr);
freopen("data.inp","r",stdin);
freopen("data.out","w",stdout);
int n, x;
cin >> n >> x;
vector<int> a(n);
FOR(i,0,n-1) cin >> a[i];
sort(a.begin(), a.end());
int i = 0, j = n-1, ans = 0;
while(i <= j){
if(i < j && a[i] + a[j] <= x) { ++i; --j; }
else --j;
++ans;
}
cout << ans;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgRk9SKGksYSxiKSBmb3IoaW50IGk9KGEpLCBfYj0oYik7IGk8PV9iOyArK2kpCiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBlbCAiXG4iCiNkZWZpbmUgcGIgcHVzaF9iYWNrCiNkZWZpbmUgc3ooYSkgKGludCkoYSkuc2l6ZSgpCiNkZWZpbmUgRklMTChhLHgpIG1lbXNldChhLHgsc2l6ZW9mKGEpKQp1c2luZyBuYW1lc3BhY2Ugc3RkOwp0eXBlZGVmIGxvbmcgbG9uZyBsbDsKdHlwZWRlZiBwYWlyPGludCxpbnQ+IGlpOwpjb25zdCBpbnQgTiA9IChpbnQpMWU2KzM7CgppbnQgbWFpbigpewogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShudWxscHRyKTsgY291dC50aWUobnVsbHB0cik7CiAgICBmcmVvcGVuKCJkYXRhLmlucCIsInIiLHN0ZGluKTsKICAgIGZyZW9wZW4oImRhdGEub3V0IiwidyIsc3Rkb3V0KTsKCiAgICBpbnQgbiwgeDsgCiAgICBjaW4gPj4gbiA+PiB4OwogICAgdmVjdG9yPGludD4gYShuKTsKICAgIEZPUihpLDAsbi0xKSBjaW4gPj4gYVtpXTsKICAgIHNvcnQoYS5iZWdpbigpLCBhLmVuZCgpKTsKCiAgICBpbnQgaSA9IDAsIGogPSBuLTEsIGFucyA9IDA7CiAgICB3aGlsZShpIDw9IGopewogICAgICAgIGlmKGkgPCBqICYmIGFbaV0gKyBhW2pdIDw9IHgpIHsgKytpOyAtLWo7IH0KICAgICAgICBlbHNlIC0tajsKICAgICAgICArK2FuczsKICAgIH0KICAgIGNvdXQgPDwgYW5zOwogICAgcmV0dXJuIDA7Cn0K