#P3302. 覆盖

覆盖

Description

给出n个数的数列,它是n的某个全排列,每次覆盖操作是指选取数列的连续k个数,

设被选中的这k个数的最小值是y, 那么把这k个数当中的每个数都变成y。

问:至少需要多少次覆盖操作,才能使得这n个数全部相等,如果不能完成任务,输出-1.

Input Format

第一行,n和k。 2<=k<=n<=1e5。

第二行,n个整数,是1至n的某个排列

Output Format

一个整数。
4 3
2 3 1 4
2

Source

强基-数学思维