摘要: 【声明】:非常感谢http://blog.sina.com.cn/s/blog_6dcd26b301013810.html,给我带来的帮助。看这个图片表示的意思:w[i]表示第i件物品的容积 ,p[i]第i件物品的价值。c[i][j] 表示 第i件物品装入容积为j 的空间中的最高价值。 其中i是物品编号,j代表当前背包的容积。非常重要的状态转移方程: C[i][j] = max(C[i-1][j],C[i-1][j-w[i]]+p[i])C[i-1][j]表示放第i-1件物品,背包容量为j的总价值。C[i-1][j-w[i]]表示存放第i-1件物品,背包容量为 j-w[i] 的总价值;再加上. 阅读全文
posted @ 2014-03-01 20:32 平林新袖 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 在上一篇的文章中说到了,最长回文子串的问题,并且提到了基本的解决办法,即暴力求解法。效率O(N^3)中心法求最长回文子串我们知道回文字符串是以字符串中心对称的,如abba以及aba等。一个更好的办法是从中间开始判断,因为回文字符串以字符串中心对称。一个长度为N的字符串可能的对称中心有2N-1个,至于这里为什么是2N-1而不是N个,是因为可能对称的点可能是两个字符之间,比如abba的对称点就是第一个字母b和第二个字母b的中间。因此可以依次对2N-1个中心点进行判断,求出最长的回文字符串即可。所以,要考虑回文是奇数还是偶数的情况。#include#include#include#define MA 阅读全文
posted @ 2014-03-01 11:22 平林新袖 阅读(427) 评论(0) 推荐(0) 编辑