题解 | #称砝码#

称砝码

https://www.nowcoder.com/practice/f9a4c19050fc477e9e27eb75f3bfd49c

/*
	HW深搜1  称砝码

*/

#include <bits/stdc++.h>
using namespace std;

int n;
int w[11];
int nums[11];
int sum = 0;

int main() {
    cin >> n;
    for (int i = 0; i < n; i++) {
        cin >> w[i];
    }
    for (int i = 0; i < n; i++) {
        cin >> nums[i];
        sum += nums[i] * w[i];
    }
    bool dp[sum+1];
    for(int i=0;i<sum+1;i++)dp[i]=false;
    dp[0]=true;
    for(int i=0;i<n;i++){
        for(int j=0;j<nums[i];j++){
            for(int k=sum;k>=w[i];k--){
                if(dp[k-w[i]])dp[k]=true;
            }
        }
    }
    int ans=0;
    for(int i=0;i<sum+1;i++){
        if(dp[i])ans++;
    }
    cout<<ans;
}
// 64 位输出请用 printf("%lld")
全部评论

相关推荐

06-04 09:27
门头沟学院 Java
点赞 评论 收藏
分享
05-19 19:57
蚌埠学院 Python
2237:Gpa70不算高,建议只写排名,个人技能不在多而在精,缩到8条以内。项目留一个含金量高的,减少间距弄到一页,硕士简历也就一页,本科不要写很多
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-29 17:30
找实习找着找着就要进入7月了,马上秋招也要开始了,找实习还有意义吗?
绝迹的星:有面就面, 没面上就当日薪4位数大佬免费培训, 面上了再考虑要不要实习
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务