#JXGQ25001D. 拆墙大作战
拆墙大作战
题目描述
强哥的城市被一群讨厌的墙挡住了去路!这个城市可以看作是一个超级宽的网格(有 行,每行有 列),每行都有一堵墙,第 行的墙横跨第 到 列。
强哥决定用他的超级武器来拆除这些墙。每次攻击,他可以选定一个长度为 的连续列区间(比如从 到 ),然后所有和这个区间有重叠的墙都会被瞬间拆除(哪怕只重叠了一列也算)。
强哥想知道,最少需要多少次攻击才能把所有墙都拆光?
数据范围
- 墙的数量 最多 堵。
- 每次攻击的宽度 可以达到 。
- 每堵墙的位置 。
- 所有输入都是整数。
输入格式
输入按照以下格式给出:
N D
L1 R1
L2 R2
...
LN RN
输出格式
输出一个整数,表示强哥最少需要多少次攻击才能拆掉所有墙。
输入样例1
3 3
1 2
4 7
5 9
输出样例1
2
输入样例2
3 3
1 2
4 7
4 9
输出样例2
1
输入样例3
5 2
1 100
1 1000000000
101 1000
9982 44353
1000000000 1000000000
输出样例3
3