
—dp
MissZhou要努力
不晓日月,不辩兰艾,终日碌碌,安与燕雀相随乎
展开
-
HDU1159Common Subsequence DP
Problem DescriptionA subsequence of a given sequence is the given sequence with some elements (possible none) left out. Given a sequence X = another sequence Z = is a subsequence of X if there e原创 2015-09-14 19:11:05 · 432 阅读 · 0 评论 -
hdu1114Piggy-Bank【完全背包基础题】
其实也算不上是裸的完全背包 因为需要保证恰好到那个重量 很幸运的是我一下子就想到了dp[]数组的初始化方法但是悲催的是自己数组开小了/********hdu11142015.10.2678MS 1612K 762 B********/#include #include#include#includeusing namespace std;int p[原创 2015-10-26 21:41:41 · 550 阅读 · 0 评论 -
hdu4597play games【记忆化搜索】
继续作死就是不想写C#大作业 嘤嘤嘤 继虚拟机安不上、数据库连不上、网不好使之后,居然codeblocks都罢工==这是一个长得像博弈的记忆化搜索(当然有人说是用博弈写的,代码居然还是这;还有人用区间dp写的 ,等学到那里再说)开始我就各种纠结怎么表示、怎么递归状态啊 。二呵呵的写了两个函数分别调用表示两个人依次取数的过程,仨人还得写仨函数呗→_→既然每个人都默认是聪明的,那么他俩每步取得过程原创 2015-12-22 11:43:38 · 443 阅读 · 0 评论 -
poj1661Help Jimmy【记忆化搜索】
这是找的倒数第二简单的,然而依旧不会,泪~ 昨天晚上调出来发现是(以示例为例)从倒数第二个平台直接跳下去 时间是0;从上面第一个跳下去 时间依旧是0 orz 12点半躺床上顿悟应该每个平台的时间不仅是一个,有左右两个时间 (唯一值得欣慰是发现了:dp值里面不用加上高度下落的时间差,最后dp[]+下落的高度,总共加一次就好,毕竟下落一定需要时间,又不能往上跳,那么总的下落时间是一定的,只需要考虑原创 2015-12-18 16:51:01 · 348 阅读 · 0 评论 -
hdu1078FatMouse and Cheese【记忆化搜索】
继续作死不写C#大作业,耶耶耶……还是更喜欢刷题啊,估计一年之后的我应该就是那种上班了还刷oj的人吧果然自己的记忆化搜索还是没上道啊(o´・ェ・`o)之前写的那是什么玩意(嫌弃脸,AC率超过百分之40 的题啊,居然num[xx][yy]>num[x][y]自己能写反了/*******hdu10782015.12.18-2015.12.21140MS 1864K 989 B C++*原创 2015-12-21 19:54:53 · 453 阅读 · 0 评论 -
hdu3555Bomb【数位dp入门题】
BombTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submission(s): 12286 Accepted Submission(s): 4410Problem DescriptionThe counter-terrorists原创 2016-03-11 11:29:16 · 426 阅读 · 0 评论 -
hdu3709Balanced Number【数位dp】
Online JudgeOnline ExerciseOnline TeachingOnline ContestsExercise AuthorF.A.QHand In HandOnline AcmersForum | DiscussStatistical ChartsProblem ArchiveRealtime Judge Statu原创 2016-03-11 22:36:01 · 934 阅读 · 3 评论 -
hdu3236Gift Hunting【二维01背包】
题意:给女朋友买一堆礼物,每个礼物有一个快乐值,有n个备选的,其中有一部分是必买的,总共有两张支票,价值v1,v2,花钱少了不给退,两张支票不能凑在一起用,而且有一个礼物是免费的,问女友最多可以多快乐?做法:最开始的思路是:dp[v1][v2],三重循环,一维是礼物,二维、三维分别是dp的两维,然后循环的时候犯了一个低级错误,j,k正常来说是大于cost[i]循环到cost[i[就停止了,但是这个题不能停啊!比方说j循环到cost[i[停了,但是k不一定不满足啊,这个题是两维啊!然后,题中要求有一个原创 2016-05-10 20:22:13 · 1276 阅读 · 0 评论 -
背包问题总结篇
1.混合了贪心思想的背包入门nefu1028暑假计划 01背包给定工作开始时间、完成时间、给的工资,工作不能重叠,求最大收益。一维Dp表示截止到当前时间的最大收益,但是事先要对结构体按结束时间排序,防止前一状态没有值 #include<cstdio> #include<iostream> #include<cstr...原创 2016-05-24 14:59:53 · 9815 阅读 · 2 评论 -
poj1276Cash Machine【多重背包模板题】
SubmitStatusDescriptionA Bank plans to install a machine for cash withdrawal. The machine is able to deliver appropriate @ bills for a requested cash amount. The machine uses exactly N disti原创 2016-05-11 17:00:53 · 2471 阅读 · 0 评论 -
poj1837Balance【二维01背包方法数——天平平衡】
题意:已知砝码(都只有一个)和天平左右挂钩的位置,问有多少种使得天平平衡的方法做法:很容易想到暴力——————是不行的,那么也容易想到dp[]下标是表示当前重量,思维定势在背包问题不用表示物品序号的那维,然后就不会写转移方程了==无耻的去翻题解,答曰需要那维表示当前物品序号,因为转移方程是dp[i][j]+=dp[i-1][j-pos[k]*weight[i]];数组、变量把自己搞晕了QAQ 然后就是负数的处理,十分纠结于7500是中间值,要是没到这么大的话怎么办啊==看代码原创 2016-05-11 20:42:35 · 1038 阅读 · 0 评论 -
zoj3471&nefu1109游戏争霸赛【状态压缩】
description 亏你能想的出来这么个背景……2015年英雄联盟校园争霸赛决赛于北京时间7月31日在东北林业大学体育馆举行。经过初选的洗礼后,有来自全国各地的n支队伍汇集到本次总决赛,比赛最终要角逐出一名冠军。规则是:队伍两两之间进行比赛,失败者被淘汰,胜利者晋级,获得和其他队伍进行较量的资格,并且为本场比赛贡献一定的精彩度。比如:i和j比赛,j被淘汰,那么比赛增加a原创 2016-01-03 11:22:20 · 671 阅读 · 0 评论 -
hdu4758Walk Through Squares【AC自动机+dp】
On the beaming day of 60th anniversary of NJUST, as a military college which was Second Artillery Academy of Harbin Military Engineering Institute before, queue phalanx is a special landscape.原创 2016-03-18 16:47:37 · 559 阅读 · 0 评论 -
hdu3709Balanced Number【数位dp记忆化搜索】
Balanced NumberTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Total Submission(s): 3733 Accepted Submission(s): 1736Problem DescriptionA balanced nu原创 2016-05-25 20:47:54 · 554 阅读 · 0 评论 -
2016年黑龙江省赛J题 S number【数位dp模板题】
description:s number is the number which the sum of every digit is a prime number,such as 98,29.output the number of S number in [l,r]input24 3049 173output1245古人云:朝闻夕死,昨晚背gis代码原创 2016-05-26 16:44:47 · 887 阅读 · 0 评论 -
hdu2412Party at Hali-Bula【树型DP入门题】
因为C#大作业搁置了5天的Dp啊T^T关键是大作业也是草草收尾的,这是一个忧伤的故事(@﹏@)~从九点到现在就改明白一个树型DP,这让故事变的更加忧伤了==什么是树型动态规划:树本身就是一个递归的结构,所以在树上进行动态规划或者递推是在合适不过的事情。必要条件:子树之间不可以相互干扰,如果本来是相互干扰的,那么我们必须添加变量使得他们不相互干扰。所以说,树型DP他很像记忆化搜索原创 2015-12-27 17:00:37 · 707 阅读 · 0 评论 -
hdu1565方格取数(1)【状态压缩】
78节课的时候看了两个记忆化搜索的题,居然~都!不!会!那就做原来计划的状态压缩吧,然而看题解都不懂,看代码发现自己太弱T^T二进制枚举方案数都不会用。能猜到的唯一是既然是状态压缩,就是要从上一行到下一行的时候数组循环利用orz晚上状态也不好,胃好涨,两个小时踉踉跄跄才搞完这个题。据说这个题正解是最小割。等假期刷图论吧/**********hdu15652015.12.12639MS 1原创 2015-12-22 20:18:10 · 536 阅读 · 0 评论 -
CF417DCunning Gena【状态压缩DP】
总感觉之前做过类似的==不出所料是一个dp,然而确实不会,一直卡在状态转移的下标怎么转化这个问题上,思维定式的以为转移就只能是+1、-1(⊙﹏⊙)b既然要求的东西是与二进制有关,那转移也这么写不就得了嘛 再说说排序的问题,之前也考虑过要怎么找最小值的时候即考虑监视器的数又考虑给每个人的钱数~。~ 其实这里也有贪心的思想吧,最开始进行计算的是需要监视器较少的,这个结构体按照监视器的数量由小到大排原创 2015-12-09 19:47:20 · 548 阅读 · 0 评论 -
bestcoder#64div21002 Sum【最大连续子序列】
机智如我 在bc做题又赢在了DP ~~再有102分就到1700了,努力再努力~~#include #include#includeusing namespace std;int a[100005];int num[100005];int maxn[100005];int n;int f(int x){ return ((1890*x+143)%10007);}in原创 2015-12-01 21:29:16 · 398 阅读 · 0 评论 -
CF414B、CF415DMashmokh and ACM【二维DP】
从昨天晚上开始紧张的这次周赛居然全是div1的题真是醉了,就连现在引以为豪的DP都做不出来T^T 简单说说这个题的思路,其实最开始想到是DP一类的了,但是也没推对orz,二维的DP嘛,一定要考虑一下,两个维度表示的意义:当前所在的长度、当前长度可以存在的数字,每次递推由上一状态(当前长度-1)得来,判断当前可能的方案数就是在原来基础上相加得到。贴代码:#include #include原创 2015-12-01 21:02:36 · 651 阅读 · 0 评论 -
BestCoder Round #63 (div.2)1003 matrix
好兴奋水了一发DP ~可以根据位置判断当前步数的奇偶性,然后奇数的dp值储存前一个的最小值,偶数的dp值储存现在的整个式子的总和~感觉之前的DP没白练虽然也有挺多人A了 但是好歹这次进前200了 rate终于能涨点了 倒是挺后悔为啥没早点做 还有10分钟 应该是挤不出200的贴出来光荣的代码 其实有一个地方可以优化一下的:最开始的dp值全设成无穷大就不用判断i,j是否等于1原创 2015-11-21 21:02:49 · 484 阅读 · 0 评论 -
hdu3535AreYouBusy【分组背包综合题】
Problem DescriptionHappy New Term!As having become a junior, xiaoA recognizes that there is not much time for her to AC problems, because there are some other things for her to do, which makes her原创 2015-11-04 14:54:32 · 1675 阅读 · 2 评论 -
hdu3591The trouble of Xiaoqian【多重背包】
Problem DescriptionIn the country of ALPC , Xiaoqian is a very famous mathematician. She is immersed in calculate, and she want to use the minimum number of coins in every shopping. (The numbers of原创 2015-11-03 14:22:50 · 1076 阅读 · 0 评论 -
hdu1059Dividing【多重背包】
DividingTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 21171 Accepted Submission(s): 5975Problem DescriptionMarsha and Bill own原创 2015-11-03 10:53:04 · 844 阅读 · 0 评论 -
hdu2844Coins【多重背包】
Problem DescriptionWhuacmers use coins.They have coins of value A1,A2,A3...An Silverland dollar. One day Hibix opened purse and found there were some coins. He decided to buy a very nice watch in a原创 2015-11-02 21:43:56 · 1981 阅读 · 0 评论 -
hdu2191悼念512汶川大地震遇难同胞——珍惜现在,感恩生活【多重背包模板题】
Problem Description急!灾区的食物依然短缺!为了挽救灾区同胞的生命,心系灾区同胞的你准备自己采购一些粮食支援灾区,现在假设你一共有资金n元,而市场有m种大米,每种大米都是袋装产品,其价格不等,并且只能整袋购买。请问:你用有限的资金最多能采购多少公斤粮食呢?后记:人生是一个充满了变数的生命过程,天灾、人祸、病痛是我们生命历程中不可预知的威胁。月有阴晴圆缺原创 2015-11-02 16:57:50 · 1060 阅读 · 0 评论 -
hdu1248寒冰王座【完全背包入门题】
Problem Description不死族的巫妖王发工资拉,死亡骑士拿到一张N元的钞票(记住,只有一张钞票),为了防止自己在战斗中频繁的死掉,他决定给自己买一些道具,于是他来到了地精商店前.死亡骑士:"我要买道具!"地精商人:"我们这里有三种道具,血瓶150块一个,魔法药200块一个,无敌药水350块一个."死亡骑士:"好的,给我一个血瓶."说完他掏出那张原创 2015-11-01 19:03:47 · 931 阅读 · 0 评论 -
hdu3127WHUgirls【二维完全背包】
Problem DescriptionThere are many pretty girls in Wuhan University, and as we know, every girl loves pretty clothes, so do they. One day some of them got a huge rectangular cloth and they want to...原创 2015-10-29 15:53:52 · 957 阅读 · 0 评论 -
hdu2159FATE【二维完全背包】
Problem Description最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有m的忍耐度,每杀一个怪xhd会得到相应的经验,并减掉相应的忍耐度。当忍耐度降到0或者0以下时,xhd就不会玩这游戏。xhd还说了他最多只杀s原创 2015-10-27 21:03:53 · 1578 阅读 · 0 评论 -
hdu2639bone collector II【第K优解】
既然是用dp求第K优解 原来一维的数组必然变成了二维 用来存储是第几优的解 这里用了一个n*n*n的算法做的……貌似也没办法优化了 分析一下做法 既然说 dp[j][m]也是根据逐次比较得来的 那么需要j固定时 逐个记录可能粗线的dp值 /************hdu26392015.10.20109MS 5548K 1226B************/#include #i原创 2015-10-20 20:54:32 · 908 阅读 · 0 评论 -
hdu1171big events in hdu【多重背包模板】【01背包】
水题 居然遇到杭电oj挂了==这是都在备战区域赛???/************hdu17112015.10.16************/#include #include#include#includeusing namespace std;int dp[50005];int value[60],num[60];int n,total,sum;void zero(i原创 2015-10-16 21:43:22 · 820 阅读 · 0 评论 -
poj3071football【概率DP】
这个题已经搁浅太久 dp[i][j]表示第i轮的时候,第j去支队伍赢的概率。那么dp[i][j]的前提就是i-1轮的时候,j是赢的,而且第i轮赢了对方接下来就是找到第i轮的时候,他的可能队手通过二进制可以发现规律,所有高位是一样的,第i位刚好相反,所以用位运算可以巧妙解决,见代码dp[i][j]=sigma(dp[i-1][j]*dp[i-1][k]*p原创 2015-10-14 21:36:18 · 485 阅读 · 0 评论 -
hdu4405Aeroplane chess【概率DP】
Problem DescriptionHzz loves aeroplane chess very much. The chess map contains N+1 grids labeled from 0 to N. Hzz starts at grid 0. For each step he throws a dice(a dice have six faces with equal pr原创 2015-10-13 18:39:40 · 522 阅读 · 0 评论 -
poj2096Collecting Bugs【概率DP】
DescriptionIvan is fond of collecting. Unlike other people who collect post stamps, coins or other material stuff, he collects software bugs. When Ivan gets a new program, he classifies all possib原创 2015-10-12 16:48:55 · 437 阅读 · 0 评论 -
hdu1466计算直线的交点数&2050 折线分割平面【DP】
Problem Description平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数。比如,如果n=2,则可能的交点数量为0(平行)或者1(不平行)。 Input输入数据包含多个测试实例,每个测试实例占一行,每行包含一个正整数n(n Output每个测试实例对应一行输出,从小到大列出所有相交方案,其中每个数为可能的交点数,每行的整数之间用原创 2015-10-08 19:37:50 · 695 阅读 · 0 评论 -
弱校联萌十一大决战之背水一战B Binary Operations
Bob has a sequence of N integers. They are so attractive, that Alice begs to have a continued part of it(a continued part here also means a continued subsequence). However, Bob only allows Alice to ch原创 2015-10-07 20:34:08 · 999 阅读 · 0 评论 -
cf149DColoring Brackets【区间dp求方法数】
rt,这个题是求方法数的==题意:为匹配好的括号涂色,满足三个条件:1)要么不涂色,要么涂红色,要么涂蓝色 2)每对匹配的括号有且只有一个涂色 3)相邻的两个括号不同色一说到括号匹配应该马上想到用栈来找匹配的括号并记录序号对应关系,找好之后,dp无外乎是递推或是递归,递推一般用来解决“序列每个元素等级相同”的问题,就比方说那种第一重循环是区间长度,第二重循环是区间左端点的,明显和这个题对不上。递归的话,最开始想的是找到一段(((..)))这种的就调用一次,其实这个步骤完全可以写在dfs中,而原创 2016-05-07 16:46:43 · 823 阅读 · 0 评论 -
HDU 4745 Two Rabbits【非连续最长回文子序列,区间DP】
居然求环的回文串还可以这么玩~~本题题意是:一个环,两只兔子一只顺时针走,一只逆时针走,从头一个起点开始,每步两只都需要选择相同的数,最多走一圈,问最多走几步?开始以为是求最多的点数==然后遇到环就想把环倍增,然而依旧不会。题解说是求出1-n的dp[i][j]值为区间内的回文串长度,然后把串分成两半,两边求和取最大值即可。为什么呢?将两侧子串的回文中点都可以当做开始的点,就是这里,我又读错题了,我以为起点是同一个石头。。。纠结了半天,用ac代码读入回文串的长度是偶数的情况,结果和我想的不一样才又看的原创 2016-05-06 16:44:08 · 789 阅读 · 0 评论 -
HDU 4293 Groups【区间dp】
SubmitStatusDescription After the regional contest, all the ACMers are walking alone a very long avenue to the dining hall in groups. Groups can vary in size for kinds of reasons, which means原创 2016-04-29 17:43:07 · 459 阅读 · 0 评论 -
POJ1141 ZOJ1463 Brackets Sequence【区间dp】
题意十分简单,然而卡了我一上午,也怪自己状态不好,学成这样还想着玩?!给定字符串,问最终匹配成的字符串【】() 开始还以为是像poj2955Brackets【区间dp 括号匹配】 这样的,结果是难了好多==首先求出的dp[][]数组意义是区间内最少添加的括号数量,pos[][]表示区间内加括号位置,-1表示i,j匹配。据说是递归时间太慢,下面的递推求dp[][]。具体看代码吧,寝室要关门了==原创 2016-04-26 22:11:36 · 599 阅读 · 0 评论