社区讨论

求调,做了好久都做不出来

灌水区参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@m2ajmmph
此快照首次捕获于
2024/10/15 22:33
去年
此快照最后确认于
2025/11/04 17:06
4 个月前
查看原帖

最长不下降子序列

题目描述

给定 nn 个不超过 1010 的正整数 aia_i, 对于每个位置 ii 的积分设置为:
位置 ii 之前的,以 aia_i 为结尾的最长不下降子序列的所有元素之和。
如果满足条件的序列有多个,则取位置字典序最小的那个子序列。例如:{1,3,2,4}\{1,3,2,4\}, 以 44 为结尾的最长不下降子序列有 {1,3,4}\{1,3,4\}{1,2,4}\{1,2,4\}, 其中 33 对于 22 的位置更靠前,所以取 {1,3,4}\{1,3,4\} 的和作为答案。
编写一个程序,输出每个位置的积分。

输入格式

第一行,11 个数 nn
第二行,nn 个数,分别表示每个数字。

输出格式

一行,nn 个数,分别表示每个位置的积分。

样例 #1

样例输入 #1

CPP
5
1 2 5 3 4

样例输出 #1

CPP
1 3 8 6 10

样例 #2

样例输入 #2

CPP
4
2 3 1 5

样例输出 #2

CPP
2 5 1 10

样例 #3

样例输入 #3

CPP
5
1 7 5 9 6

样例输出 #3

CPP
1 8 6 17 12

提示

【样例解释 11
五个位置的积分分别为 (1),(1+2),(1+2+5),(1+2+3),(1+2+3+4)(1),(1+2),(1+2+5),(1+2+3),(1+2+3+4)
【样例解释 22
四个位置的积分分别为 (2),(2+3),(1),(2+3+5)(2),(2+3),(1),(2+3+5)
【样例解释 33
五个位置的积分分别为 (1),(1+7),(1+5),(1+7+9)(1),(1+7),(1+5),(1+7+9)(1+5+6)(1+5+6)
【数据规模】
对于 50%50\% 的数据,1n5001\le n\le 500
对于 80%80\% 的数据,1n1031\le n\le 10^3
对于 100%100\% 的数据,1n1041\le n\le 10^4

回复

2 条回复,欢迎继续交流。

正在加载回复...