remove
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
某系统记录了一串按时间顺序出现的条目,共 个。第 个条目携带一个正整数标记 。
你可以从这串条目中移除若干个(也可以一个不删)。移除后,剩余条目会自动向前对齐,且相对先后顺序保持不变。设最终剩余条目数为 ,新的序列为:
定义该结果的“对齐分数”为:
- 对每个位置 ,如果 ,则贡献 分,否则贡献 分。
- 总分为所有位置的贡献之和。
你的任务是:通过选择移除方案,使对齐分数最大,并输出这个最大值。
输入格式
第一行输入一个正整数 。 第二行输入 个正整数 。
输出格式
输出一行一个整数,表示最大对齐分数。
输入输出样例
输入 #1
9
9 1 8 2 7 3 5 6 4
输出 #1
4
样例解释
一种最优做法是只保留标记为 的四个条目,并保持其原有顺序。紧凑后得到序列:
此时:
- (匹配, 分)
- (匹配, 分)
- (匹配, 分)
- (匹配, 分)
总对齐分数为 。可以证明无法取得更高分数。
数据范围与提示
对于所有数据,满足 ,。
子任务(Subtasks)分配如下:
- Subtask 1 (20 pts):
- Subtask 2 (15 pts):
- Subtask 3 (15 pts): 保证序列 非递减,即对于所有 ,满足 。
- Subtask 4 (20 pts): 保证输入序列严格递增,即 。
- Subtask 5 (30 pts): 无特殊限制。