第三题裸的背包问题。。。 #include <bits/stdc++.h> using namespace std; const int N = 55; const long long INF = 1e18; long long dp[2*N],v[N]; int w[N]; int main(){     int n;     scanf("%d",&n);     for(int i=0;i<n;i++)scanf("%lld",&v[i]);     for(int i=0;i<n;i++)scanf("%d",&w[i]);     dp[0] = 0;     for(int i=1;i<=100;i++)dp[i] = -INF;     for(int i=0;i<n;i++){         for(int j=100;j>=w[i];j--){             dp[j] = max(dp[j],dp[j-w[i]]+v[i]);         }         for(int j=0;j<=100;j++)if(dp[j]<v[i])dp[j] = -INF;     }     for(int i=1;i<=100;i++){         if(dp[i]>0){             printf("%d\n",i);             break;         }     }     return 0; }
点赞 评论

相关推荐

点赞 评论 收藏
分享
06-13 10:15
门头沟学院 Java
想去夏威夷的大西瓜在...:我也是27届,但是我现在研一下了啥项目都没有呀咋办,哎,简历不知道咋写
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务