题意:
要把1~n1~n分成kk组,每组内的数必须连续,组与组不相交且每个数必须属于一个组,并且任意ii有一个参数tit_i。
如果[l,r][l,r]为一组,那么从ll走到l+1l+1的概率是tltl\frac{t_l}{t_l},从l+1l+1走到l+2l+2的概率是tltl+1+tl+1tl+1\frac{t_l}{t_{l+1}}+\frac{t_{l+1}}{t_{l+1}},依次类推...
分类:
其他好文 时间:
2016-05-13 00:27:50
阅读次数:
291
单调队列优化在写斜率优化之前,我们来回顾一下单调队列优化的dp
1. 对于如下形式的dp方程
dp[i]=min{dp[j]+f(j)}(0<j<i)dp[i] = min\{dp[j] + f(j)\} (0 < j < i)
我们直接用一个变量维护(0, i)中dp[j] + f(j)的最小值即可2.对于如下形式的dp方程
dp[i]=min{dp[j]+f(j)}(i?m<j<i)dp...
分类:
其他好文 时间:
2016-05-12 15:13:29
阅读次数:
260
斜率优化dp。 #include #include #include using namespace std; const int maxn = 50000 + 10; int n; long long L; int c[maxn],q[maxn]; long long s[maxn],f[maxn... ...
分类:
其他好文 时间:
2016-05-11 19:37:00
阅读次数:
123
F. Bear and Bowling 4
题意:
给一个序列valval,任选连续的一段[l,r][l,r],其价值为∑rj=lval[j]?(j?l+1)\sum_{j=l}^{r}val[j]*(j-l+1),求最大价值 。
简单的说就是可以去掉这个序列的某前缀和某后缀,然后对新得到的valval求ans=∑val[i]?ians=\sum val[i]*i ,最后求max(ans)ma...
分类:
其他好文 时间:
2016-05-07 09:19:28
阅读次数:
286
3675: [Apio2014]序列分割
Time Limit: 40 Sec Memory Limit: 128 MB
Submit: 1538 Solved: 637
[Submit][Status][Discuss]
Description
小H最近迷上了一个分隔序列的游戏。在这个游戏里,小H需要将一个长度为n的非负整数序列分割成k+1个非空的子序列。为了得到k+1个子序列,小H...
斜率优化。。因为要求方差乘m^2...也就是每段距离与平均值的平方和再乘m。 f[i][j]表示i天后,走了j段的最小平方和。 求出最小平方和再乘个m就行了= = 需要注意,是可以停留在原地的。。。 1 #include<cstdio> 2 #include<iostream> 3 #include ...
分类:
其他好文 时间:
2016-04-24 15:31:04
阅读次数:
220