题目背景
「微雨众卉新,一雷惊蛰始」
中午,休息室,阿绫肩膀上。
“我有一个愿望,参加全国音乐祭,获奖,和阿绫一起,摆脱这训练的苦海。”
“为热爱而到来,为抽身而努力……吗”。
正午的阳光渗过窗帘,抚上困倦的人儿的脸颊。天依的左手悄悄搭上阿绫怀里的吉他,
“铮——”
蛰虫被雷声唤醒,没人向他们保证雨的降临。
惊蛰 「我愿把岁月磨成望镜寻遍这星空 将微光聚焦手心紧紧握住不放松」
题目描述
比赛临近,各式测试也丰富了起来,作为天依他们的专业分析师,你的工作是统计分析队员们表现情况——总之,某领导要来慰问,所以你被要求修改出一份令人赏心悦目的分析报告。
在已有的 n 次测试中,对于某位特定的选手,他在第 i 次测试的波动值是非负整数 ai。波动值越小表示选手在测试中的心态和发挥越稳定,所以你需要“略微调整”波动值序列 {an},得到另一个非负整数序列 {bn}。不过,做人不能昧良心,但报告又必须好看,所以 {bn} 有如下要求:
-
{bn} 单调不递增,选手越来越厉害嘛;
-
对于每个 i,如果 bi<ai,老师会不高兴,所以你需要花费 C 单位的精力说服老师(其中 C 为给定常数);
-
对于每个 i,如果 ai≤bi,选手会不高兴,而且可能很不高兴,所以你需要花费 bi−ai 单位的精力安慰选手。
你希望在满足条件的情况下,最小化花费的精力之和。作为成熟的信竞选手,你自然需要自己动手,求出这一最小化的结果。
形式化题意
给定非负整数序列 {an},定义函数 f(x,y) 为
f(x,y)={x−y,C,x≥yx<y,其中 C 是给定常数。请构造一个不增非负整数序列 {bn},最小化
i=1∑nf(bi,ai).
你仅需输出这一最小化的结果。
输入格式
第一行两个整数,表示序列长度 n 和给定常数 C。
接下来一行表示序列 {an} 。
输出格式
输出一行一个整数,表示最小化的结果。
提示
样例 #1 解释
构造 {bn}={5,5,2},可见:
i=1∑nf(bi,ai)=f(5,4)+f(5,5)+f(2,2)=1+0+0=1.样例 #2 解释
构造 {bn}={12,11,4,2,1,1,1,1,1,1},可以得到答案。
数据规模与约定
本题采用 Subtask 的计分方式。
设 V 为序列 {an} 中元素以及常数 C 的值域。
对于 100% 的数据,1≤n≤106,V⊆[0,109]。
对于不同的子任务,作如下约定:
子任务编号 |
n |
V |
特殊性质 |
子任务分值 |
1 |
≤103 |
⊆[0,109] |
无 |
25 |
2 |
≤105 |
⊆[0,102] |
15 |
3 |
≤106 |
⊆[0,109] |
A |
5 |
4 |
B |
15 |
5 |
≤105 |
无 |
20 |
6 |
≤106 |
- 特殊性质 A:对于常数 C ,满足 C=0。
- 特殊性质 B:对于序列 {an} ,满足元素单调递增。