#2591. 缆车支柱

缆车支柱

题目描述

科罗拉州的罗恩打算为他的奶牛们建造一个滑雪场,虽然需要的设施仅仅是一部缆车.建造一部缆车,需要从山脚到山顶立若干根柱子,并用钢丝连结它们.

你可以认为相对于地面,柱子的高度可以忽略不计.每相邻两根柱子间都有钢丝直接相连.显然,所有钢丝的任何一段都不能在地面之下. 为了节省建造的费用,罗恩希望在 工程中修建旧能少的柱子.他在准备修建缆车的山坡上迭定了N(2\red{N(2≤}N\red{N≤}5000)\red{5000)}个两两之间水平距离相等的点,并且测量了每个点的高度H(0H\red{H(0≤H}\red{≤}109)\red{10^9)}

并且,按照国家安全标准,相邻两根柱子间的距离不能超过K(1\red{K(1≤}K\red{K≤}N1)\red{N-1)}个单位长度.柱子间的钢丝都是笔直的. 罗恩希望你帮他计算一下,在满足下 列条件的情况下,他至少要修建多少根柱子:

首先,所有的柱子都必须修建在他所选定的点上,且每一段钢丝都必须高于地面或者正好跟地面相切.相邻两根柱子的距离不大于K\red{K}个单位长度.当然,在第一个点与最后一个点上一定都要修建柱子.

输入格式

1\red{1}行:两个整数N\red{N}K\red{K,}用空格隔开.

2\red{2}N+1\red{N+1}行:每行包括一个正整数,第i+l\red{i+l}行的数描述了第i\red{i}个点的高度.

输出格式

输出一个整数,即罗恩最少需要修建的柱子的数目.

样例

输入样例

13 4
0
1
0
2
4
6
8
6
8
8
9
11
12

输出样例

5

提示

样例说明

罗恩最少要修建5\red{5}根柱子(分别在第1\red{1,}5\red{5,}7\red{7,}9\red{9,}13\red{13}个山坡上的点).

钢丝在15\red{1-5,}57\red{5-7,}79\red{7-9} 以及1213\red{12 - 13}4\red{4}段上与地面相切