P2347 砝码称重

Posted xcfxcf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P2347 砝码称重相关的知识,希望对你有一定的参考价值。

技术图片

 

 三层循环,第一层,6个物品,第二层,每个物品的个数,第三层,质量范围

技术图片
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int maxn = 1e3 + 10;
int dp[maxn];
int w[7] = {0,1,2,3,5,10,20};
int a[7];
int ans;
signed main(){
   // freopen("in","r",stdin);
    ios::sync_with_stdio(0);
    for(int i = 1; i <= 6; i++)
        cin >> a[i];
    dp[0] = 1;
    for(int i = 1; i <= 6; i++){
        for(int j = 1; j <= a[i];j++){
            for(int k = 1000; k >= 0; k--){
                if(dp[k]){
                    dp[k + w[i]] = 1;
                }
            }
        }
    }
    for(int i = 1; i <= 1000; i++){
        if(dp[i])
            ans++;
    }
    cout << "Total=" << ans << endl;
    return 0;
}
View Code

 

以上是关于P2347 砝码称重的主要内容,如果未能解决你的问题,请参考以下文章

P2347 砝码称重

P2347 砝码称重

洛谷——P2347 砝码称重

P2347 砝码称重

洛谷P2347 砝码称重 [2017年4月计划 动态规划01]

P2347 砝码称重