01背包 记忆化搜索

来源:互联网 发布:广告配音软件 编辑:程序博客网 时间:2024/05/19 20:38
#include <cstdio>int f[110][1100],w[110],v[110],n,m;int max(int x,int y){return x>y?x:y;}int dfs(int x,int y){if(x<=0)return 0;if(f[x][y])return f[x][y];if(y<w[x])    return f[x][y]=dfs(x-1,y);else    return f[x][y]=max(dfs(x-1,y),dfs(x-1,y-w[x])+v[x]);}int main(){int i,j,k;scanf("%d%d",&m,&n);for(i=1;i<=n;i++)scanf("%d%d",&w[i],&v[i]);printf("%d",dfs(n,m));return 0;}
0 0
原创粉丝点击