CF2124G.Maximise Sum
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
本题与 B 题不同。在本题中,对于每个整数 x,0≤x≤n−1,你需要输出所有操作代价至少为 x 时,前缀最小值之和的最大值。
给定一个长度为 n 的数组 a,其中 0≤ai≤n。你最多可以进行一次如下操作:
- 选择两个下标 i 和 j,满足 i<j。将 ai:=ai+aj,然后将 aj=0。
一次操作的代价为 j−i。如果不进行操作,则代价为 0。
对于每个整数 x,0≤x≤n−1,输出所有操作代价至少为 x 时,min(a1)+min(a1,a2)+…+min(a1,a2,…,an) 的最大可能值。
输入格式
每组测试数据包含多组测试用例。第一行包含整数 t(1≤t≤104),表示测试用例的数量。
每个测试用例的第一行包含一个整数 n(2≤n≤106),表示数组 a 的长度。
接下来一行包含 n 个用空格分隔的整数 a1,a2,…,an(0≤ai≤n),表示数组 a。
保证所有测试用例中 n 的总和不超过 106。
输出格式
对于每个测试用例,输出 n 个整数,表示对于每个 i,所有操作代价至少为 i−1 时的最大答案。每个测试用例输出一行,数之间用空格分隔。
输入输出样例
输入#1
6 2 1 2 4 2 3 1 4 2 1 0 5 5 5 0 5 5 5 4 1 3 3 1 10 7 4 7 0 8 7 5 0 2 1
输出#1
3 3 10 10 10 10 1 1 20 20 20 15 15 11 11 11 10 8 27 27 27 27 23 23 20 19 17 16
说明/提示
我们来分析第五个测试用例:
- x=0,1,2:最优操作是 i=2,j=4,代价为 2。此时数组 a 变为 [4,4,3,0,1],得分为 11。
- x=3:最优操作是 i=2,j=5,代价为 3。此时数组 a 变为 [4,2,3,3,0],得分为 10。
- x=4:最优(且唯一)操作是 i=1,j=5,代价为 4。此时数组 a 变为 [5,1,3,3,0],得分为 8。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?