
动态规划
文章平均质量分 74
GOFORACM
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
最短回文串
最短回文串 时间限制: 10000ms内存限制: 128000kB 描述如果一个字符串正过来读和倒过来读是一样的,那么这个字符串就被称作回文串。 例如 abcdcba,abcddbca 就是回文串,而 abcdabcd 不是。 你要解决的问题是: 对于任意一个字符串,输出将这个字符串变为回文串需要插入的最少字符个数,比如,Ab3bd只需要插入 2 个字符就可以变为一个回文串。输入原创 2012-02-24 15:39:04 · 1042 阅读 · 0 评论 -
最长前缀
最长前缀 时间限制: 1000ms内存限制: 10000kB 描述 已知一个字符串集合,如{A, AB, BA, CA, BBC},求给定序列前缀可由集合中字符串构成的最大长度,如ABABACABAABC得出11。 输入输入包括多组测试数据,以EOF为结束。 每组测试数据第一行,包括一个整数n(1 所有字符串的字符都为大写字母。输出对于每组测试数据,只需输出一行,即给原创 2012-02-24 15:44:10 · 909 阅读 · 0 评论 -
最简单的DP问题(POJ1163)
对动态规划一直很抵触,希望通过这道题能够逐渐学好这一算法。 题目连接:点击打开链接 转换思维,不是从顶部往下走,而是从底部往上推,不断的缩小问题的规模。 代码如下: #include #include #define max(x,y) (x>y?x:y) int a[110][110]; int main() { int i, j, n; //fre原创 2012-04-12 19:04:09 · 450 阅读 · 0 评论 -
DP问题(POJ1088滑雪)
题目连接:点击打开链接 解题: 刚看这道题时一头雾水,想排序之后又不知道该怎么做,只好搜结题报告。这才发现是动态规划问题,茅塞顿开。 重点:DP方程:len[ i ][ j ] = max{ len[ i-1][ j ], len[ i ][ j-1], len[ i+1][ j ], len[ i ][ j+1] }; 保证:在图内。 代码如下:原创 2012-04-12 21:54:11 · 422 阅读 · 0 评论