poj 初级 动态规划
night_watcher
这个作者很懒,什么都没留下…
展开
-
POJ 1260 Pearls
题意解释: 有n个等级的珠宝,等级依次升高,等级越高价钱越高,每买一个等级的任何数量的珠宝必须多付10颗此种珠宝的价钱,可以用高等级的珠宝代替低等级的,问要买到若干规定的数量和等级珠宝的最少花费。例如买5颗价值为10的、100颗价值为20的珠宝,有两种方案:一种为分别买两种等级的珠宝价钱为(5+10)*10+(100+10)*20 = 2350;另一种是将等级低的(即价格低)的珠宝全部换为等级高的原创 2013-01-16 16:17:10 · 346 阅读 · 0 评论 -
POJ 3176 Cow Bowling
地址:http://poj.org/problem?id=3176题意:数阵中求一条通路使和最大代码:#includeusing namespace std;#define N 355int map[N][N];int max(int a,int b){ if(a>b) return a; else return b;}i原创 2013-01-16 22:07:20 · 322 阅读 · 0 评论 -
POJ 2533 Longest Ordered Subsequence
地址:http://poj.org/problem?id=2533题意,求最长单调递增子序列长度动态规划,求LIS最大不下降子序列 O(n^2)和O(n*logn)算法都能完美AC 本人弱菜只能写n^2的了,另一种转贴下優YoU http://user.qzone.qq.com/289065406/blog/1300023619 #includeusing原创 2013-01-16 22:32:26 · 239 阅读 · 0 评论 -
POJ 1159 Palindrome
地址:http://poj.org/problem?id=1159题意:将给定的字符串补成回文串至少添加几个字符。解法:1.将此字符串倒置,与原字符串匹配,则:添加字符=字符串长度-匹配字符个数2.如果DP开一个5000^2的静态数组是一定会超空间的,解决的办法是开一个二维滚动数组,这是这题的有一个关键。PS:一开始怎么测都不行,想不到居然是把1写成了i,坑爹的细节错误啊,糟心原创 2013-01-17 23:25:48 · 308 阅读 · 0 评论 -
POJ 1080 Human Gene Functions
地址:http://poj.org/problem?id=1080题意:匹配两字符串,使得到得权值最大。解题心得:本题最重要是问题的初始化,不仅要令dp[0][0]=0;而且要初始化dp数组的0行0列: for(i=1;ifor(j=1;j动态规划方程:dp[i][j]=max(dp[i-1][j]+score[p1[i]][0],dp[i][j-1]原创 2013-01-18 01:10:48 · 576 阅读 · 1 评论