![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
-------dp-------
二三两
口禾火
展开
-
福州0209 DAY5 动态规划模型
真正的巨坑,一寒假都写不完,慢慢来。 另,上课的学长(叫老师真的显得好老))好温和啊,这几天来第一次听这么透彻,甚至突然想好好学习一晚上。………………基本要素阶段:把所给求解问题的过程恰当地分成若干相互联系的阶段。 一般是按某种线性关系划分的,比如时间先后etc。状态:表示每个阶段的自然状况/客观条件,是不可控制因素。 ……教材上的说法太学究了,就是表示决策目前的一个状态...原创 2018-02-27 14:36:45 · 176 阅读 · 0 评论 -
luogu1280 尼克的任务 (线性dp)
题目描述 尼克每天上班之前都连接上英特网,接受他的上司发来的邮件,这些邮件包含了尼克主管的部门当天要完成的全部任务,每个任务由一个开始时刻与一个持续时间构成。尼克的一个工作日为N分钟,从第一分钟开始到第N分钟结束。当尼克到达单位后他就开始干活。如果在同一时刻有多个任务需要完成,尼克可以任选其中的一个来做,而其余的则由他的同事完成,反之如果只有一个任务,则该任务必须由尼克去完成,假如某些任务开...原创 2018-04-23 21:28:00 · 168 阅读 · 0 评论 -
Codeforces 432D 完美子串 + 51nod 1129 字符串最大值(dp-kmp)
我觉得我能A这题完全是因为前一天晚上做了很类似的。字符串,前缀后缀,出现次数,关键词一拼就是kmp。 首先我们考虑第二问的第二个数,怎么求得一段前缀子串在 s 中出现的次数。这里需要我们深入地了解next数组的含义。呃,我的意思是,如果 s[ 1~i ]出现过x次,那么 s[ 1~next[ i ] ]也必然至少出现过x次。 由此,我们设 d[ i ]表示 s[ 1~i ]出...原创 2018-04-08 21:38:39 · 508 阅读 · 0 评论 -
Codeforces 474D 蛋糕(dp-递推)
无敌水题,实际上样例解释就暴露了它递推的本质。f[ i ]表示吃 i 个蛋糕的方案数。 那么,f[ i ]=f[ i-1 ]+f[ i-k ]; ( i >k ) 这个递推和走楼梯很像。即当前i个蛋糕,可以分为两种情况:吃掉一个蛋糕,剩下蛋糕的方案数即为f[ i-1 ];或者选择吃掉k个蛋糕,剩下蛋糕的方案数为f[ i-k ]。初始化:i < k: f[ i ]=1; ...原创 2018-04-08 07:58:00 · 173 阅读 · 0 评论 -
hdu 1176 免费馅饼 (dp)
免费的陷阱。第一眼嘛,FJ摘苹果,但是n<=1e5,O( n^2 ),稳定TLE。 那么寻找别的思路,通过观察发现x的范围很小,[0.10],遂采取暴力措施,设 f[ i ][ j ] 表示第 i 秒,以(必须)站在 j 为条件时,其最多能接到的馅饼。我起初是产生了歧义,关于这句话:因此在第一秒,他只能接到4,5,6这三个位置中其中一个位置上的馅饼。我理解成了一般性地,在 i ...原创 2018-04-07 21:41:28 · 146 阅读 · 0 评论 -
花店橱窗 (dp-路径记录)
第一问很简单。 f[i][j]表示前i朵花放在前j个花瓶里时的最大美学值,且此时第i朵花必须放在第j个花瓶里。则有状态转移方程: f[i][j]=max(f[i-1][k]+a[i][j]) ( i-1<=k<=j-1) k范围限制是因为至少已经有前i-1个花瓶放了花。第二问记录每次决策。可以用递归写,有机会(没有)试试。这里采用的方法是,声明一个 pre[i][j...原创 2018-03-09 21:46:31 · 261 阅读 · 0 评论 -
USACO Farmer_John收苹果 (dp)
题目描述 农场的夏季是收获的好季节。在Farmer John的农场,他们用一种特别的方式来收小苹果:Bessie摇小苹果树,小苹果落下,然后Farmer John尽力接到尽可能多的小苹果。 作为一个有经验的农夫,Farmer John将这个过程坐标化。他清楚地知道什么时候(1<=t<=1,000,000)什么位置(用二维坐标表示,-1000<=x,y&l...原创 2018-03-08 21:34:35 · 905 阅读 · 0 评论 -
ceoi 轮船问题 (dp-最长不下降子序列)
题目描述 某国家被一条河划分为南北两部分,在南岸和北岸总共有N对城市,每一城市在对岸都有一个城市作为友好城市。每一对友好城市都希望有一条航线来往,于是他们向政府提出了申请。 由于河终年有雾。政府决定允许开通的航线就互不交叉(如果两条航线交叉,将有很大机会撞船)。兴建哪些航线以使在安全条件下有最多航线可以被开通。 输入格式 第一行两个由空格分隔的整数x,y,...原创 2018-03-07 21:41:53 · 469 阅读 · 0 评论 -
合唱队形 (dp-最长不上升/不下降子序列)
题目描述 N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。 合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2,…,TK, 则他们的身高满足T1<…Ti+1>…>TK(1<=i<=K)。 你的任务是,已知所有N位同学的身高,计算最少需要几...原创 2018-03-07 21:34:01 · 166 阅读 · 0 评论 -
导弹拦截(dp-最长不上升子序列)
从头填坑。除了数字三角形之外做的第二道dp。 题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。 输入导弹的枚数和导弹依次飞来的高度(雷达给出...原创 2018-03-07 21:25:30 · 285 阅读 · 0 评论 -
luogu 1594 护卫队(线性dp)
题目描述 护卫车队在一条单行的街道前排成一队,前面河上是一座单行的桥。因为街道是一条单行道,所以任何车辆都不能超车。桥能承受一个给定的最大承载量。为了控制桥上的交通,桥两边各站一个指挥员。护卫车队被分成几个组,每组中的车辆都能同时通过该桥。当一组车队到达了桥的另一端,该端的指挥员就用电话通知另一端的指挥员,这样下一组车队才能开始通过该桥。每辆车的重量是已知的。任何一组车队的重量之和不能超...原创 2018-04-25 21:36:26 · 225 阅读 · 0 评论