题号:NC15506
时间限制:C/C++/Rust/Pascal 5秒,其他语言10秒
空间限制:C/C++/Rust/Pascal 114 M,其他语言228 M
64bit IO Format: %lld
题目描述
Blastix Riotz歌います
ガンバロウ!!ヴィヴィヴィオケー!(ドゥルル)ファファ!シマムラ!シミケン!エエェェ↓↓ エエェェェェ↓↓↓ウェェ↓キュウウゥッ↑サクセスデュゥゥ...あああああああああああああああああああああああああああああああああ
(亲爱的,你筐体塌了.jpg)

大家都知道优酱的音游水平非常差但又特别喜欢装逼。有一天优酱走进机铺发现四周都是暴龙天(Music Voltex的目前最高段位)在愉快地打着超难高速交互曲目Blastix Riotz(别名“暴徒”),作为一名岳翔(Music Voltex的最低段位),优酱当然被吓得心肺停止,但是爱装逼的优酱还是故作镇定。她装作冷静地进行了一波达成率99%的分析,然后想到了一个用来计算打暴徒的最省体力的方案的数学模型,只要能解出这个模型的最优解,即使是岳翔也能轻松打通暴徒,瞬间变身暴龙天。你能帮助优酱实现这个宏伟的装逼梦想吗?
优酱的模型大概思路就是我们把整个谱面看成一个数组,数组上的每一个值表示把当前这个note打到Critical判定所需要的体力,而我们又知道,岳翔和暴龙天的游戏体验是显然不同的。如果我们把整个谱面拆分成一节一节的分段,对于岳翔来说,每一分段中的每一个note都要耗费体力,而暴龙天因为高超的技术可以让自己的体力耗费等于分段中最后一个note所需要的体力。所以如果我们可以最小化我们和暴龙天在完成整个谱面上的体力差距,我们就可以逆袭成功了。但是要注意,因为某些不可名状的原因,有时候经过划分后在某些段优酱的体力耗费甚至会低于暴龙天,在这种情况下因为“菜是原罪”的自然法则,这个时候优酱和暴龙天的体力耗费会被倒转。所以为了简化计算我们直接取二者差的平方,也就是MSE。我们将这一模型形式化如下:
我们给出两个由整数组成的,长度都为
)
的权值数组
)
和
)
。优酱要把数组的
下标划分为若干段
)
,相邻的两段首尾相接,划分后每段
下标对应的的代价为
%20%3D%20((%5Csum_%7Bl%20%5Cle%20i%20%5Cle%20r%7D%20%7B%20a_i%7D)%20-%20b_r)%5E2)
。我们的目标是帮优酱找到一种划分,使得所有段的代价总和最小。
输入描述:
单文件,多数据,请循环读取至文件末尾。
对于每组数据,第一行为一个整数
,含义和范围请参见题目描述。
接下来的一行,为
个用空格分割的整数
,和范围请参见题目描述。
接下来的一行,为
个用空格分割的整数
,和范围请参见题目描述。
输出描述:
对于每组数据,输出一个整数,表示答案,独占一行。
示例1
输入
复制
3
0 1 3
10 4 5
3
0 1 3
10 2 6