简单版和困难版的唯一区别在于对于 n,∑∣a∣,x 的限制不同。
最终,Nanami 还是来到了医院。
医院的病房排列成了一个长度为 n 的序列,同时每间病房上都写着一个数字 a。Nanami给了你一个整数 x,你需要把医院的病房划分成不相交的 k 段。称这 k 段为 [[l1,r1],[l2,r2],…,[lk,rk]],划分需要满足 l1=1,rk=n,li≤ri,ri=li+1−1(i<k)。
请你求出 ∑idx=1k∑i=lidxridx∑j=iridx[(∑s=ijas)=x] 的最小值,即划分的每段的子段的和为 x 的数量的和的最小值。
[expr] 代表表达式 expr 的布尔值,即如果 expr 为真,则 [expr]=1;否则,[expr]=0。
一个序列 a1,a2,…,an 的子段是指存在两个下标 l,r 满足 1≤l≤r≤n,那么 [al,al+1,…,ar] 就是该序列的一个子段,∑i=lrai 就是这个子段的和。