#include <bits/stdc++.h>
using namespace std;

typedef pair<int,int> P;

int n,m,l,r,a,b;
vector<P> v;

int main(){
	scanf("%d%d",&n,&m);
	for(int i = 0 ; i < n ; i ++){
		scanf("%d%d",&l,&r);
		v.push_back(P(l,r));
	}
	
	vector<int> L;
	bitset<200010> R; R.set();
	for(P p: v){
		int x = R._Find_next(p.second-1);
		if(x <= m){
			a ++;
			R[x] = false;
		}
		else {
			L.push_back(p.first);
		}
	}
	sort(L.begin(),L.end());
	
	for(int x: L){
		if(b<x){
			b++;
		}
	}
	printf("%d\n",n-min(a+b,m));
}
	