#AT1003. 最小化

最小化

题目描述

有一个长度为N N 的序列: A1,A2...AN A_1,A_2...A_N 。最初,这个序列是 1,2,...,N1,2,...,N 的排列。

在这个序列上,Snuke可以执行以下操作:

选择连续的 K 个元素在序列中。然后,将每个被选中元素的值替换为被选中元素的最小值。

Snuke希望通过重复上述操作使得这个序列中的所有元素都相等。找到所需的最小操作次数。可以证明,在此问题的约束条件下,这个目标总是可以达到的。

输入格式

第一行两个整数N N K K ,分别表示序列的长度和连续替换的序列长度

第二行N个整数,表示1 1 N N 的全排列

输出格式

输出所需的最小操作次数。

样例

4 3
2 3 1 4
​
2
3 3
1 2 3
​
1
8 3
7 3 1 8 4 6 2 5
4

提示

2KN100000 2≤K≤N≤100000

A1,A2,AN A_1,A_2,A_N1,2,...,N1,2,...,N 的排列。

【样例1解析】

其中一种最佳策略如下:

在第一次操作中,选择前三个元素。序列A A 变为 1,1,1,41,1,1,4

在第二次操作中,选择后三个元素。序列A A 变为 1,1,1,11,1,1,1