QOJ.ac

QOJ

実行時間制限: 1 s メモリ制限: 512 MB 満点: 110

#15383. 递增

統計

欧洲联盟最近通过了一项新法律,规定所有序列都必须是单调不降的。从 2026 年 1 月 1 日开始,任何拥有非单调不降序列的人都将受到严厉处罚。更具体地说,对于一个序列 $a_1, a_2, \dots, a_n$,如果存在某个 $i$ ($1 \le i < n$) 满足 $a_i > a_{i+1}$,则该序列是非法的;否则,该序列是合法的。

Ivica 最近收到了一个序列作为礼物,他担心自己会因为这项新法律而陷入麻烦。幸运的是,Ivica 意识到他可以任选序列中相邻的两个元素,并将它们替换为它们的和。更具体地说,如果 Ivica 当前的序列为 $a_1, a_2, \dots, a_m$,他可以选择某个满足 $1 \le k < m$ 的 $k$,并将序列替换为 $a_1, a_2, \dots, a_{k-1}, (a_k + a_{k+1}), a_{k+2}, \dots, a_m$。Ivica 可以进行任意多次这样的操作,他的目标是通过这些操作获得一个合法的序列。

当然,Ivica 不想完全毁掉他的序列,因此他希望从初始序列中获得一个尽可能长的合法序列。请帮助 Ivica 确定他能从初始序列中获得的最长合法序列的长度,并输出任意一个具有该最大长度的合法序列。

输入格式

第一行包含一个自然数 $n$ ($1 \le n \le 5000$),表示 Ivica 序列的长度。

第二行包含 $n$ 个自然数 $a_i$ ($1 \le a_i \le 10^9$),表示 Ivica 收到的礼物序列。

输出格式

第一行输出一个整数 $m$,表示 Ivica 从初始序列中可以获得的最长合法序列的长度。

第二行输出 $m$ 个整数,表示 Ivica 从初始序列中可以获得的一个长度为 $m$ 的合法序列。如果存在多个这样的序列,输出其中任意一个即可。

子任务

子任务 分值 数据范围
1 10 $n \le 20$
2 15 $n \le 100, a_i \le 100$
3 20 $n \le 500$
4 25 $n \le 1000$
5 40 无附加限制

对于每个测试用例,如果第一行输出正确,将获得该测试用例 60% 的分数。

如果第二行输出也正确,将获得该测试用例剩余 40% 的分数。

样例

输入 1

6
3 2 6 3 3 8

输出 1

4
5 6 6 8

输入 2

7
3 6 4 2 6 2 5

输出 2

5
3 6 6 6 7

说明

样例 1 解释

在第一次操作中,Ivica 将前两个元素替换为它们的和,得到非法数组 $[5, 6, 3, 3, 8]$。然后,他将第三个和第四个元素替换为它们的和,得到合法数组 $[5, 6, 6, 8]$。可以证明,这是能从初始数组中获得的最长合法数组。

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.