/ WHOJ / 题库 /

城市天际线

城市天际线

题目描述

约翰的奶牛们认为,太远升起的那一刻是一天中最美好的,在那时她们能够看到远方城市模糊的轮廓。显然,这些轮廓其实是城市里建筑物模糊的影子。

建筑物的影子实在太模糊了,奶牛们只好把它们近似地看成若干个边长为 \(1\) 单位长度的正方体整齐地叠在一起。城市中的所有建筑物的影子都是标准的矩形,奶牛们的视野宽 \(W\) 个单位长度,不妨把它们按从左到右划分成 \(W\) 列,并按 \(1\) 到 \(W\) 编号。建筑物的轮廓用 \(N\) 组数据给予描述,每组数据包含 \(2\) 个整数 \(x,y(1≤x≤W,0≤y≤500000)\),表示从第 \(x\) 列开始,建筑物影子的高度变成了 \(y\)。也就是说,从第 \(x[i]\) 列到第 \(x[i+1]-1\) 列中每一列建筑物影子的高度都是 \(y[i]\) 个单位长度。
贝茜想知道这座城市里最少有多少幢建筑物,也就是说,这些影子最少可以由多少个矩形完全覆盖。当然,建筑物的影子可以有重叠,请写一个程序帮她计算一下。
例如,城市的轮廓可能是这样:

说明

于是它可以用\((1,1),(2,2),(5,1),(6,3),(8,1),(11,0),(15,2),(17,3),(20,2),(22,1)\)这 \(10\) 组数据来进行描述。不难看出,这座城市最少有 \(6\) 幢建筑物,以下是这些建筑物的一种可能的分布:

说明

格式

输入格式

第一行给出 \(N,W\);
第二行到第 \(N+1\) 行:每行给出二个整数 \(x,y\),输入的 \(x\) 严格递增,并且第一个 \(x\) 总是 \(1\)。

输出格式

输出一个整数,表示城市中最少包含的建筑物数量。

样例1

样例输入1

10 26
1 1
2 2
5 1
6 3
8 1
11 0
15 2
17 3
20 2
22 1

样例输出1

6

限制

\(100\%\) 的数据:\(1≤W≤10^6,1≤N≤10000\)。