P9259 [PA 2022] Fotografia
题目描述
**题目译自 [PA 2022](https://sio2.mimuw.edu.pl/c/pa-2022-1/dashboard/) Runda 3 [Fotografia](https://sio2.mimuw.edu.pl/c/pa-2022-1/p/fot/)**
字节科技学校(*Bajtockiej Szkoły Technicznej*, BST)的毕业生们聚集在学校前面的广场上拍摄纪念照。他们排成一排,其位置从左到右编号为 $1$ 至 $n$,其中 $n$ 是今年毕业生的人数。
摄影师决定重新安排这些人的位置,让他们按身高升序排列。最矮的人在最左边,最高的人在最右边。幸运的是,今年的毕业生中没有任意两人身高相同。
为了避免混乱,安排位置将按一定方式进行。在一次操作中,摄影师将喊出一串位置编号。在这些位置上的人将按所喊到的顺序出列并走到广场中间。然后,摄影师将重复同样的数字列表。广场中间的人将他们出列顺序的**逆序**,依次回到摄影师所喊出的位置。
我们希望用尽可能少的操作将所有毕业生按身高的升序排列。你的工作是规划重新安排的方案,并告诉摄影师在第几次操作让哪些毕业生出列。
输入格式
第一行一个整数 $n$,表示毕业生人数。
接下来 $n$ 行是一个整数序列 $h_1,h_2,\ldots,h_n$,每行一个整数,表示站成一排的人的身高。所有身高两两不同。
输出格式
输出第一行包含一个整数 $r$,表示把所有人按身高升序排列所用的最少操作次数。
接下来 $2r$ 行包含对这些操作的描述。描述第一行包含一个整数 $p_i\ ()$,表示这一轮出列的人数,第二行 $p_i$ 个整数,表示按输出顺序喊出人的位置编号。在一次操作中喊出的人不能重复。
如果有多种操作次数最少的方案,输出任意一种即可。
说明/提示
对于 $100\%$ 的数据,满足:
$1\le n\le 3 \times 10 ^ 3, 1\le h_i\le 3 \times 10 ^ 3, 1\le p_i\le n$。