poj 1973
摘要:
dp[i][x]表示前i个工人,做x件A,最多能做多少件B。(空间可以优化成一维,但要注意for循环顺序,从大到小,向01背包那样!)因为时间是通过二分枚举确定下来了。所以有转移方程:mid是枚举处的时间dp[j]=max(dp[j],dp[j-k]+(mid-k*a[i])/b[i]);代码:#include<iostream>#include<fstream>using namespace std;int n,m,mid;int a[101],b[101];int dp[101][101];int solve(){ int i,j,k; memset(dp,-1,s 阅读全文
posted @ 2011-05-02 15:17 宇宙吾心 阅读(285) 评论(0) 推荐(0)
浙公网安备 33010602011771号