A9280.新年排列

普及-

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

有一个长度为 nn 的新年排列 pp,还有一个神秘的整数 kk

排列 pp 中的每个元素 pip_i 满足 1pin1 \leq p_i \leq n,并且排列 pp 中的元素不会重复。

现在,你可以任意多次执行以下操作:每次选择 kk 个元素,将选择的元素 从小到大排序 后移动到 pp 的尾部。例如,当 n=4n = 4k=2k = 2p=[1,4,3,2]p = [1,4,3,2] 时,你可以选择 4433 排序后移动到 pp 的尾部,使得 p=[1,2,3,4]p = [1,2,3,4]。这样的操作一次就能让 pp 变成升序排列。

求将排列 pp 变成升序的操作最小次数。祝你在这个新年排序挑战中获得成功!

输入格式

第一行输入一个 n(2n105)n(2 \leq n \leq 10^5)k(1kn)k(1 \leq k \leq n)

第二行输入 nn 个整数 p1,p2,,pn(1pinp_1,p_2,\ldots, p_n(1 \le p_i \le n)。

输出格式

输出操作几次能使 pp 成为升序排列。

输入输出样例

  • 输入#1

    3 2
    1 2 3

    输出#1

    0
  • 输入#2

    3 1
    3 1 2

    输出#2

    1
  • 输入#3

    4 2
    1 3 2 4

    输出#3

    1
  • 输入#4

    4 2
    2 3 1 4

    输出#4

    2

说明/提示

第一个样例,因为已经是升序全排列了,所以不需要操作了

第二个样例,一次只能选择一个元素移动,选择3移动到尾部,操作一次即可

第三个样例,在第一次操作中选择元素 2211,在第二次操作中选择元素 3344 那么该排列将按如下方式排序:[2,3,1,4][3,4,1,2][1,2,3,4][\color{red}{2}, \color{black}3, \color{red}{1}, \color{black}4] \rightarrow [\color{blue}{3}, \color{blue}{4}, \color{red}{1}, \color{red}{2}\color{black}] \rightarrow [1,2, \color{blue}{3}, \color{blue}{4}\color{black}]

首页