摘要:
假设序列总和为tot, 每一段序列的和为 sum[i] 那么每一段序列,都被乘了(tot-sum[i]),将所有序列的贡献累加起来再除以2就是答案 考虑f[i][j]为前i个数,分了j块的最优值 那么 f[i][j] = max(f[k][j-1]+(sum[i]-sum[k])*(tot-(sum 阅读全文
摘要:
误差 dp (什么鬼) 读题时觉得(误差不超过 %5也算对) 这句话实在是没有什么卵用, 但是上这是解题的关键,因为两个距离很远的行星对答案的贡献非常小, 所以我们可以让一部分统一除以一个长度,为了保证精度的要求,前面的一部分要暴力算,这样就可以过了 1 #define MAXN 100010UL 阅读全文