ACM_DP
Qiubiubiu
这个作者很懒,什么都没留下…
展开
-
HDU 1506 && HDU1505 && HDU 2870 (DP).
~~~~ 这三道DP题是逐层递进的,大家可以从前往后做。 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1506 http://acm.hdu.edu.cn/showproblem.php?pid=1505 http://acm.hdu.edu.cn/showproblem.php?pid=2870 ~~~~ 1506: 分别找每原创 2014-08-01 09:23:44 · 964 阅读 · 0 评论 -
HDU 2046 骨牌铺方格。
Problem Description 在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n ,输出铺放方案的总数. 例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图: Input 输入数据由多行组成,每行包含一个整数n,表示该测试实例的长方形方格的规格是2×n (0 Output 对于每个测试实例,请输出铺原创 2014-02-01 16:05:01 · 981 阅读 · 0 评论 -
HDU 1465 不容易系列之一。
Problem Description 大家常常感慨,要做好一件事情真的不容易,确实,失败比成功容易多了! 做好“一件”事情尚且不易,若想永远成功而总从不失败,那更是难上加难了,就像花钱总是比挣钱容易的道理一样。 话虽这样说,我还是要告诉大家,要想失败到一定程度也是不容易的。比如,我高中的时候,就有一个神奇的女生,在英语考试的时候,竟然把40个单项选择题全部做错了!大家都学过概率论,应该原创 2014-02-03 23:16:58 · 1476 阅读 · 0 评论 -
POJ 1458 Common Subsequence.(最长公共子序列)
Description A 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 exists a原创 2014-05-20 15:28:32 · 1149 阅读 · 0 评论 -
HDU 1003 && HDU 1081(最大子列和,最大子矩阵和).
最大子列和,及其扩展最大子矩阵和,都是比较经典的dp,把这两题写在一起,共大家参考学习。 ~~~~ lz弱菜啊,到现在还只能写这么水的DP...orz。 ~~~~ 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 http://acm.hdu.edu.cn/showproblem.php?pid=1081 题意应该比原创 2014-07-27 15:42:17 · 1514 阅读 · 0 评论 -
ZOJ 1093 && NYoj16(DP)
~~~~ 两个题目大致类似,NYOJ上面那道题就是小白上的矩形嵌套啦。 都是先对长宽进行排序,然后逐层更新最大值(边更新边记录)。 好了,不说了。 题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1093 http://acm.nyist.net/JudgeOnline/problem.php?p原创 2014-08-08 13:44:42 · 904 阅读 · 0 评论 -
POJ 1692 Crossed Matchings(dp).
~~~~ 题意:给出两行数字序列,求上下匹配的最多组数是多少. 匹配规则: 1.匹配对的数字必须相同。 2.每个匹配必须有且只能有一个匹配与之相交叉,且相交叉的两组匹配数字必须不同。 3.一个数最多只能匹配一次。 最长公共子序列的改编,令f[i][j]表示第一个序列的前i个数字和第二个序列的前j个数字的匹配的最优值。 状态转移:f[i][j]=max(f[p-1][q-1]+2,原创 2014-08-15 09:06:37 · 961 阅读 · 0 评论 -
POJ 1631(最长上升子序列 nlogn).
~~~~ 由题意可知,因为左边是按1~n的顺序递增排列,要想得到不相交组合,左边后面的一定与相应右边后面的相连,如此一来, 就可以发现其实是一道最长上升子序列的题目,要注意的是N 题目链接:http://poj.org/problem?id=1631 ~~~~ nlogn的算法在这里补充一下。 最长不下降子序列的O(nlogn)算法分析如下: 设 A[t]表示序原创 2014-08-03 21:06:00 · 3465 阅读 · 0 评论 -
HDU 2571 命运 (dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2571 思路:DP自左向右,由上至下更新就好。 #include #include #include #include #include #include #include #define N 1111 #define INF 0x3f3f3f3f using namespace std; int原创 2014-08-17 15:38:29 · 1314 阅读 · 0 评论 -
HDU 2018 母牛的故事。
Problem Description 有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0 n=0表示输入数据的结束,不做处理。 Output 对于每个测试实例,输出在第n年的时候原创 2014-02-01 16:13:25 · 1011 阅读 · 1 评论 -
POJ 3356 AGTC.
~~~~ 题目意思问将序列 x 转化成序列 y 需要多少步操作。 题目链接:http://poj.org/problem?id=3356 ~~~~ 我的想法先求的两条序列的最长公共子序列。余下不相同或者是缺少的部分做相应的处理就好。 最长公共子序列都会吧,于是···· #include #include #include #include #define N 1000+10 using原创 2014-08-11 10:59:59 · 790 阅读 · 0 评论 -
HDU 1087 && POJ 2533(DP,最长上升子序列).
~~~~ 两道题的意思差不多,HDU上是求最长上升子序列的和,而POJ上就的是其长度。 貌似还有用二分写的nlogn的算法,不过这俩题n^2就可以过嘛。。 ~~~~ 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1087 http://poj.org/problem?id=2533 ~~~~ HDU1087: #include原创 2014-08-02 22:13:47 · 1499 阅读 · 0 评论 -
POJ 1887 Testing the CATCHER.
~~~~ 求最长不上升子序列,把数组倒过来不就是求最长上升子序列了么,QAQ.. 用的是nlogn算法,不清楚的请戳:http://blog.csdn.net/darwin_/article/details/38360997 题目链接:http://poj.org/problem?id=1887 ~~~~ #include #include #include #include #defi原创 2014-08-03 21:14:27 · 1043 阅读 · 0 评论 -
POJ 1609 Tiling Up Blocks.
~~~~ 二维的最长上升子序列。n^2算法居然可以水过。。 就不多说了,排个序,然后DP。 题目链接:http://poj.org/problem?id=1609 ~~~~ #include #include #include #include #define N 11111 using namespace std; struct node { int l,m; }b[N];原创 2014-08-03 23:18:33 · 1213 阅读 · 0 评论 -
HDU 1058 Humble Numbers (dp+打表)
先是想筛法素数表啊,然后1~2000000000枚举打表啊,结果越想越不对。 后来想到唯一分解定理,可是怎么实现呢。。果然还是需要努力啊。。 研究了discuss代码,码之~ ~~~~ dp的思想,若dp[i]是Humble Numbers,那么dp[i]*2,dp[i]*3,dp[i]*5,dp[i]*7都将是Humble Numbers。 所以只需要注意连续性便好了。 #inclu原创 2014-08-18 18:13:18 · 1044 阅读 · 0 评论 -
POJ 3042 Grazing on the Run (区间DP)
区间dp,~~~~ dp[i][j][0]表示i到j之间已经走过,并且现在在i点的staleness(可以理解为枯萎指数)最小值, dp[i][j][1]表示i到j之间已经走过,并且现在在j点的staleness最小值。 于是对于在i点,可能从i+1->i,也可能从j->i,即: 很重要的一点,在我们转移到i时,除了即将到达的i点,还有未到达的(n-(j-i原创 2014-08-20 09:53:05 · 1222 阅读 · 0 评论 -
HDU 2156 分数矩阵。
Problem Description 我们定义如下矩阵: 1/1 1/2 1/3 1/2 1/1 1/2 1/3 1/2 1/1 矩阵对角线上的元素始终是1/1,对角线两边分数的分母逐个递增。 请求出这个矩阵的总和。 Input 每行给定整数N (N Output 输出答案,保留2位小数。 Sample原创 2014-02-03 21:14:03 · 1691 阅读 · 0 评论 -
HDU 2047 阿牛的EOF牛肉串.
Problem Description 今年的ACM暑期集训队一共有18人,分为6支队伍。其中有一个叫做EOF的队伍,由04级的阿牛、XC以及05级的COY组成。在共同的集训生活中,大家建立了深厚的友谊,阿牛准备做点什么来纪念这段激情燃烧的岁月,想了一想,阿牛从家里拿来了一块上等的牛肉干,准备在上面刻下一个长度为n的只由"E" "O" "F"三种字符组成的字符串(可以只有其中一种或两种字符,原创 2014-02-04 11:18:31 · 1764 阅读 · 2 评论 -
HDU 1290 献给杭电五十周年校庆的礼物.
Problem Description 或许你曾经牢骚满腹 或许你依然心怀忧伤 或许你近在咫尺 或许你我天各一方 对于每一个学子 母校 永远航行在 生命的海洋 今年是我们杭电建校五十周年,这是一个值得祝福的日子。我们该送给母校一个怎样的礼物呢?对于目前的大家来说,最好的礼物当然是省赛中的好成绩,我不能参赛,就送给学校一个DOOM III球形大蛋糕吧,这可是名牌,估计原创 2014-02-03 23:50:20 · 1932 阅读 · 0 评论 -
POJ 3670 && POJ 3671 (dp)
最长不下降子序列的应用嘛。两题都是一样的。 POJ 3670:求给定序列按递增或递减排列时,所需改变的最小的数字的数目。 POJ 3671:求给定序列按递增排列时,所需改变的最小的数字的数目。 思路就是求最长不下降子序列,然后剩下的就是需要改变的字母。 最长不下降子序列:(我之前有写过,不懂请戳)http://blog.csdn.net/darwin_/article/detail原创 2014-08-17 22:57:42 · 1173 阅读 · 0 评论