BZOJ_4518_[Sdoi2016]征途_斜率优化】的更多相关文章

BZOJ_4518_[Sdoi2016]征途_斜率优化 Description Pine开始了从S地到T地的征途. 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站. Pine计划用m天到达T地.除第m天外,每一天晚上Pine都必须在休息站过夜.所以,一段路必须在同一天中走完. Pine希望每一天走的路长度尽可能相近,所以他希望每一天走的路的长度的方差尽可能小. 帮助Pine求出最小方差是多少. 设方差是v,可以证明,v×m^2是一个整数.为了避免精度误差,输出结果时输出v×m^2.…
传送门 推式子(快哭了……)$$s^2*m^2=\sum _{i=1}^m (x_i-\bar{x})^2$$ $$s^2*m^2=m*\sum _{i=1}^m x_i^2-2*sum_n\sum _{i=1}^m x_i+sum_n^2$$ $$s^2*m^2=m*\sum _{i=1}^m x_i^2+(sum_n-\sum _{i=1}^m x_i)^2-(\sum _{i=1}^m x_i)^2$$ 然后因为$sum_n$和$\sum _{i=1}^m x_i$两项是定值,且值相等,所…
Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 1875  Solved: 1045[Submit][Status][Discuss] Description Pine开始了从S地到T地的征途. 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站. Pine计划用m天到达T地.除第m天外,每一天晚上Pine都必须在休息站过夜.所以,一段路必须在同一天中走完. Pine希望每一天走的路长度尽可能相近,所以他希望每一天走的路的长度的方差尽可能…
题目链接 题目要求使得下面这个式子最小(\(\mu=\frac{\sum_{i=1}^ma_i}{m}\)是平均数,\(a_i\)为第\(i\)段的和): \[\frac{\sum_{i-1}^m(\mu -a_i)^2}{m}*m^2\] \(m\)可以乘进去,得: \[m\times\sum_{i=1}^m(a_i-\frac{sum}{m})^2\] 注意到其中有\(m\)个\(sum\),于是连同乘上的\(m\)一起提出来就是\(m\times\sum_{i=1}^m(a_i^2-2*a…
传送门 把式子展开后发现就是要求: m∗(∑i=1msum′[i])−sum[n]2" role="presentation" style="position: relative;">m∗(∑mi=1sum′[i])−sum[n]2m∗(∑i=1msum′[i])−sum[n]2的最小值. 于是只需要求: m∗(∑i=1msum′[i])" role="presentation" style="position…
好久没写斜率优化板子都忘了, 硬是交了十几遍.. 推一下柿子就能得到答案为 \[m*\sum x^2-(\sum x)^2\] 后面是个定值,前面简单dp,斜率优化一下就行了. \(f[i][j]=f[k][j-1]+sum[i]*sum[i]-2sum[i]sum[k]+sum[k]*sum[k]\) \(-f[k][j-1]-sum[k]*sum[k]=-2sum[i]sum[k]-f[i][j]+sum[i]*sum[i]\) #include <cstdio> #include <…
BZOJ4518 Sdoi2016 征途 Description Pine开始了从S地到T地的征途. 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站. Pine计划用m天到达T地.除第m天外,每一天晚上Pine都必须在休息站过夜.所以,一段路必须在同一天中走完. Pine希望每一天走的路长度尽可能相近,所以他希望每一天走的路的长度的方差尽可能小. 帮助Pine求出最小方差是多少. 设方差是v,可以证明,v×m2是一个整数.为了避免精度误差,输出结果时输出v×m2. Input 第一…
首先根据题目中给的要求,推一下方差的柿子. \[v\times m^2 = m\times \sum x^2 - 2 \times sum \times sum +sum*sum \] 所以\(ans = v*m^2 = m\times \sum x^2 - sum*sum\) 那我们实际上就是最大化平方和. 由于题目限制了要分\(m\)段.所以我们的\(dp\)状态就是\(f[i][j]\)表示前\(i\)个数分了\(j\)段. 那么一个比较显然的转移 \(dp[i][p]=min(dp[j]…
BZOJ_3675_[Apio2014]序列分割_斜率优化 Description 小H最近迷上了一个分隔序列的游戏.在这个游戏里,小H需要将一个长度为n的非负整数序列分割成k+1个非空的子序列.为了得到k+1个子序列,小H需要重复k次以下的步骤: 1.小H首先选择一个长度超过1的序列(一开始小H只有一个长度为n的序列——也就是一开始得到的整个序列): 2.选择一个位置,并通过这个位置将这个序列分割成连续的两个非空的新序列. 每次进行上述步骤之后,小H将会得到一定的分数.这个分数为两个新序列中元…
BZOJ_1713_[Usaco2007 China]The Bovine Accordion and Banjo Orchestra 音乐会_斜率优化 Description Input 第1行输入N,之后N行输入Ai,之后N行输入Bi. Output 输出最大收益. Sample Input 3 1 1 5 5 1 1 INPUT DETAILS: There are 6 cows: 3 accordionists and 3 banjoists. The accordionists hav…