CF1644C.Increase Subarray Sums
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an array a1,a2,…,an , consisting of n integers. You are also given an integer value x .
Let f(k) be the maximum sum of a contiguous subarray of a after applying the following operation: add x to the elements on exactly k distinct positions. An empty subarray should also be considered, it has sum 0 .
Note that the subarray doesn't have to include all of the increased elements.
Calculate the maximum value of f(k) for all k from 0 to n independently.
输入格式
The first line contains a single integer t ( 1≤t≤5000 ) — the number of testcases.
The first line of the testcase contains two integers n and x ( 1≤n≤5000 ; 0≤x≤105 ) — the number of elements in the array and the value to add.
The second line contains n integers a1,a2,…,an ( −105≤ai≤105 ).
The sum of n over all testcases doesn't exceed 5000 .
输出格式
For each testcase, print n+1 integers — the maximum value of f(k) for all k from 0 to n independently.
输入输出样例
输入#1
3 4 2 4 1 3 2 3 5 -2 -7 -1 10 2 -6 -1 -2 4 -6 -1 -4 4 -5 -4
输出#1
10 12 14 16 18 0 4 4 5 4 6 6 7 7 7 7 8 8 8 8
说明/提示
In the first testcase, it doesn't matter which elements you add x to. The subarray with the maximum sum will always be the entire array. If you increase k elements by x , k⋅x will be added to the sum.
In the second testcase:
- For k=0 , the empty subarray is the best option.
- For k=1 , it's optimal to increase the element at position 3 . The best sum becomes −1+5=4 for a subarray [3,3] .
- For k=2 , it's optimal to increase the element at position 3 and any other element. The best sum is still 4 for a subarray [3,3] .
- For k=3 , you have to increase all elements. The best sum becomes (−2+5)+(−7+5)+(−1+5)=5 for a subarray [1,3] .