![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
dp
luyiming123
初中OIer,水平入门,喜欢数据结构与算法
展开
-
P3195 [HNOI2008]玩具装箱 题解
我数学好弱啊,这种题都能卡设fif_ifi为压缩完1~i的玩具的最优解,不难列出状态转移方程:fi=min{fj+[qi−qj+i−(j+1)−L]2}(j<i)f_i=\min\{f_j+[q_i-q_j+i-(j+1)-L]^2\}(j<i)fi=min{fj+[qi−qj+i−(j+1)−L]2}(j<i),其中qi=∑k=1iCiq_i=\sum_{k=1}^iC_iqi=∑k=1iCi明显是O(n2)O(n^2)O(n2)的式子,n≤5e4n \le 5e原创 2020-07-22 22:54:31 · 220 阅读 · 0 评论 -
洛谷 P4147 玉蟾宫 题解【悬线dp】
原题地址蛤,今天正好学习一下悬线dp,写了个板子题。用l[i][j]l[i][j]l[i][j]表示能延伸的最左的位置的列,r[i][j]r[i][j]r[i][j]表示能掩上的最右位置的列,up[i][j]up[i][j]up[i][j]表示向上扩展最大长度。不难得到:若a[i][j]==F且a[i][j−1]==Fl[i][j]=l[i][j−1]若a[i][j]==F且a[i][j+...原创 2020-04-05 10:13:36 · 344 阅读 · 5 评论 -
洛谷 P3205 [HNOI2010]合唱队 题解
原题地址谔谔,这什么题啊,我第一眼看蒙了然后打了个全排的暴力,发现连部分都骗不了…后来发现,这tm怎么有点像区间dp?!看完题解区,?!还真是!分享一下做法吧设三维数组dp[i][j][k](k∈[0,1])dp[i][j][k](k \in [0,1])dp[i][j][k](k∈[0,1]),dp[i][j][0]dp[i][j][0]dp[i][j][0]表示iii在最左边的co...原创 2020-04-02 21:58:02 · 1906 阅读 · 7 评论 -
洛谷 P4170[CQOI2007]涂色 题解
原题地址。差不多是个水题罢,难度个人认为是红设dp[i][j]dp[i][j]dp[i][j]表示区间[i,j][i,j][i,j]与答案匹配,考虑区间dp若i=ji=ji=j,则dp[i][j]=1dp[i][j]=1dp[i][j]=1,显然若s[i]=s[j]s[i]=s[j]s[i]=s[j],则dp[i][j]=min(dp[i+1][j],dp[i][j−1])dp[i][j]...原创 2020-03-28 19:10:38 · 400 阅读 · 8 评论 -
洛谷 P5337 [TJOI2019]甲苯先生的字符串 题解
本题解很易懂!原题地址给你一个数nnn和一个字符串sss,求符合长度为nnn且在sss中连续的字符不能连续出现,即这个字符串中不能出现sss的连续子串,答案对1e9+71e9+71e9+7取模。n≤1e15n \le 1e15n≤1e15不难想到一个很暴力的dpdpdp:设dp[i][j]dp[i][j]dp[i][j]为长度为iii且当前字符为jjj的合法字符串个数(mod1e9+7)...原创 2020-03-16 22:01:02 · 378 阅读 · 1 评论 -
洛谷 P5858 「SWTR-03」Golden Sword 题解
题目地址设dp[i][j]dp[i][j]dp[i][j]表示放入前iii个物品且锅中还有jjj个物品所获得的最大耐久度。很容易推出dp[i][j]=Maxk=j−1k≤min(j+s−1,w)dp[i][j]=Max_{k=j-1}^{k \le min(j+s-1,w)}dp[i][j]=Maxk=j−1k≤min(j+s−1,w){dp[i−1][k]dp[i-1][k]dp[i−1]...原创 2020-03-14 10:40:07 · 500 阅读 · 2 评论 -
洛谷 P4933 大师 题解
原题地址题目大意:给你一个长度为n的序列,求等差子序列的个数(不要求连续),1个数或2个数也算是等差子序列。1≤n≤1000,v=∣最大公差∣≤200001 \le n \le 1000,v=|最大公差|\le200001≤n≤1000,v=∣最大公差∣≤20000听说官方题解是O(nv)O(nv)O(nv)?很明显一个O(n2)O(n^2)O(n2)的题目然后计数。。。我一开始想的是...原创 2020-03-12 08:43:02 · 324 阅读 · 3 评论 -
UVA1347 旅行 Tour 题解【dp】
原题地址(vjudge)这题还是有点意思的,你珂以理解为要找两条除了起点和终点之外没有任何点是相等的路径。这题就和某经典题不太一样了,某经典题是可以重复的。所以用dp[i][j]dp[i][j]dp[i][j]表示同时走到第iii个点和第jjj个点就不是很好了。那怎么表示呢?珂以用dp[i][j]dp[i][j]dp[i][j]表示同时走到iii和jjj且max(i,j)\max(i,j)ma...原创 2020-03-06 21:20:45 · 231 阅读 · 3 评论