摘要:
题目链接: http://poj.org/problem?id=1631 题意: 直接看样例,题意是啥? 题解: LIS, O(nlogn)的,维护一个数组ans,手动模拟一下就懂了。 代码: 1 #include <iostream> 2 #include <cstdio> 3 #include 阅读全文
摘要:
题目链接: http://poj.org/problem?id=1065 题意: C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间,如果第i+1个木棒的重量和长度都大于等于第i个处理的木棒,那么将不会耗费时间,否则需要消耗一个单位的时间。因 阅读全文
摘要:
题目链接: http://poj.org/problem?id=3181 题意: 农夫约翰有N元钱,市场上有价值1……K的商品无限个,求所有的花钱方案? 题解: http://www.hankcs.com/program/cpp/poj-3181-dollar-dayz.html dp[i][j] 阅读全文
摘要:
题目链接: http://poj.org/problem?id=3046 题意: 有T种蚂蚁,共A只。同一个种的蚂蚁长得一样,但是不同种的蚂蚁牙齿颜色不同。任取n只蚂蚁(S<=n<=B),求能组成几种集合? 题解: dp[i][j] := 使用前i个种可以配出来j个的集合的个数。 那么dp[0][0 阅读全文
摘要:
题目链接: http://poj.org/problem?id=1742 题意: 有n种面额的硬币,面额个数分别为A_i、C_i,求最多能搭配出几种不超过m的金额? 题解: 多重部分和问题。多重背包优化? O(n^2) dp[i][j] := 用前i种硬币凑成j时第i种硬币最多能剩余多少个(-1表示 阅读全文
摘要:
题目链接: http://poj.org/problem?id=3280 题意: 字串S长M,由N个小写字母构成。欲通过增删字母将其变为回文串,增删特定字母花费不同,求最小花费。 题解: dp[i][j]表示将原字串s的子字串s[i…j]变换成回文的最小花费 因为删除和增加一个字符都是一样的效果,取 阅读全文
摘要:
题目链接: http://poj.org/problem?id=3616 题意: 奶牛Bessie在0~N时间段产奶。农夫约翰有M个时间段可以挤奶,时间段f,t内Bessie能挤到的牛奶量e。奶牛产奶后需要休息R小时才能继续下一次产奶,求Bessie最大的挤奶量。 题解: 定义dp[i]表示第i个时 阅读全文
摘要:
题目链接: http://poj.org/problem?id=2385 题意: 给你t,w 表示有t分钟掉苹果,你可以移动w次,求出在最大次数时最多能接到多少苹果。 题解: dp[i][j] : 表示第i分钟 跑了j次 得到的最大值 代码: 1 #include <iostream> 2 #inc 阅读全文