摘要: http://poj.org/problem?id=3249题意:给一个有向无环图DAG(不一定联通),每个点有权值,入度为0的点为起点,出度为0的点为终点,选择一个起点走到一个终点,使得路上的权和最大。分析:dp[to] = max(dp[from]) + value[to],然后先拓扑排序保证状... 阅读全文
posted @ 2014-08-04 21:11 james47 阅读(171) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3132题意:给定n和k,问用恰好k个不同的质数来表示n的方案数。分析:n和k都很小。反正就是个背包,选k个物品恰好填满n即可。 1 #include 2 #include 3 using namespace std; 4 5 bool dp[1... 阅读全文
posted @ 2014-08-04 21:06 james47 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 题目可以在bnuoj、soj等OJ上找到。题意:不超过40个人站成一圈,只能和两边的人对战。给出任意两人对战的输赢,对于每一个人,输出是否可能是最后的胜者。分析:首先序列扩展成2倍,破环成链。dp[i][j]表示i和j能够相遇对打,那么dp[i][i+n]为真代表可以成为最后胜者。枚举中间的k,若i... 阅读全文
posted @ 2014-08-04 21:02 james47 阅读(141) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3356题意:给两个长度不大于1000的串,修改其中一个串使得两串相同,问最少修改次数。修改有三种,插入一个字符,删除一个字符,改变一个字符。分析:直接给方程。dp[i][j]表示第一个串前i位和第二串前j位匹配的最小修改次数。dp[0][0] =... 阅读全文
posted @ 2014-08-04 20:50 james47 阅读(159) 评论(0) 推荐(0) 编辑