QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 512 MB Total points: 110

#13354. 志愿服务

Statistics

大家可能不太了解,Malnar 先生在空闲时间经常通过志愿服务来回馈社区。没错!他在信息学问题的志愿服务中心非常活跃。

最近,他接到了中心的电话,结果发现那里缺少递增序列。总是乐于助人的 Malnar 先生欣然答应了。具体来说,他为了这个目的保留了一个包含 $n$ 个整数的数组。从 $1$ 到 $n$ 的所有整数在他的数组中恰好出现一次。

Malnar 先生将从他的数组中选择一些递增子序列捐赠给中心,而他会将剩余的数字留作他用。必须注意,数组中的每个数字最多只能用于一个子序列,也就是说,所选的子序列必须具有不同的下标。

子序列定义为通过删除数组中的某些(可能为零)元素,同时保持剩余元素顺序而获得的任何序列。如果子序列中的每个数字(第一个除外)都大于前一个数字,则称该子序列是递增的。

由于 Malnar 先生非常慷慨,他希望他捐赠的所有序列都是最长递增子序列。换句话说,如果 $l$ 是原始数组的最长递增子序列的长度,Malnar 先生将选择若干个长度均为 $l$ 的不相交递增子序列。

Malnar 先生希望捐赠尽可能多的子序列。对于给定的 Malnar 先生的数组,请输出他所选出的子序列的最大数量,并提供此类选择的一个示例。

输入格式

第一行包含整数 $n$,即数组的大小。

第二行包含 $n$ 个数字 $p_i$ ($1 \le p_i \le n$),代表数组的元素。$1$ 到 $n$ 之间的每个正整数在数组中恰好出现一次。

输出格式

第一行输出 Malnar 先生选择的子序列的最大数量,以及最长递增子序列的长度。

在接下来的每一行中,输出此类选择中的一个子序列。子序列由位置列表(即数组的下标)定义,这些下标应按递增顺序排列。

输出的子序列应该是递增的、不相交的,并且具有相同的长度——即最长递增子序列的长度。

子序列的相对顺序无关紧要。此外,如果存在多个解,你可以输出其中任意一个。

数据范围

在每个子任务中,均满足 $1 \le n \le 1\,000\,000$。

子任务 分值 数据范围
1 10 $1 \le n \le 15$
2 40 $1 \le n \le 1000$
4 60 $1 \le n \le 1\,000\,000$

样例

输入格式 1

3
1 2 3

输出格式 1

1 3
1 2 3

输入格式 2

4
4 3 2 1

输出格式 2

4 1
1
2
3
4

输入格式 3

7
2 1 6 5 7 3 4

输出格式 3

2 3
1 3 5
2 6 7

说明

第三个样例的说明: 最长递增子序列的长度为 $3$。由下标 $1, 3, 5$(即值 $2, 6, 7$)确定的子序列是递增的。由下标 $2, 6, 7$(即值 $1, 3, 4$)确定的子序列也是递增的。这两个子序列没有公共元素,且它们都具有最大长度,因此这是一个有效的选择。无法选择超过两个这样的子序列。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.