首页 > 其他分享 >HJ41 称砝码

HJ41 称砝码

时间:2023-07-21 14:44:07浏览次数:36  
标签:set nums int ++ HJ41 砝码 new

1. 题目

读题

HJ41 称砝码 

 

考查点

 

2. 解法

思路

  •  1. 暴力破解,3重循环
  • 2. 利用set 去重

可参照 

【Java 数据结构及算法实战】系列 045:HJ41 称砝码-华为开发者论坛 | 华为开发者联盟 (huawei.com)

代码逻辑

 

具体实现

public class HJ041 {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] w = new int[n];
for (int i = 0; i < n; i++) {
w[i] = sc.nextInt();
}
int[] nums = new int[n];
for (int i = 0; i < n; i++) {
nums[i] = sc.nextInt();
}
System.out.println(getWays(w, nums, n));
}

public static int getWays(int[] w, int[] nums, int n) {
Set<Integer> set = new HashSet<>();
set.add(0);

for (int i = 0; i < n; i++) {
List<Integer> list = new ArrayList<>(set);
for (int j = 0; j <= nums[i]; j++) {
for (int k = 0; k < list.size(); k++) {
set.add(list.get(k) + j * w[i]);
}
}
}
return set.size();
}
}

 

3. 总结

标签:set,nums,int,++,HJ41,砝码,new
From: https://www.cnblogs.com/shoshana-kong/p/17548662.html

相关文章

  • AcWing——砝码称重
    4942.砝码称重-AcWing题库1、题目给定一个天平和101个砝码。101个砝码的重量依次为n⁰,n¹,n²,…,n¹⁰⁰克,其中n是一个不小于2的整数。请你判断,我们能否利用给定天平和砝码对重量为m克的物品进行称重。注意,天平的两端都可以放入砝码。具体来说,你的任务是判断是否可......
  • 砝码称重
    砝码称重给定一个天平和$101$个砝码。$101$个砝码的重量依次为$n_0,n_1,n_2,\ldots,n_{100}$克,其中$n$是一个不小于$2$的整数。请你判断,我们能否利用给定天平和砝码对重量为$m$克的物品进行称重。注意,天平的两端都可以放入砝码。具体来说,你的任务是判断是否可以......
  • 洛谷 P8742 [蓝桥杯 2021 省 AB] 砝码称重
    经典01背包题首先介绍一下01背包,即一种DP问题,以放置物品为模型,每个物品只能放一次。其区分于完全背包(每个物品可以放无限多次),以及多重背包(每个物品有一个固定次数上限)。题中给出了$N$个砝码及每个砝码的质量,要求我们求出可以称出质量的种数。由此想到转化为01背包。......
  • HJ41_称砝码_动态规划_双层循环的内层循环对象同时更新(巧妙)
    思路:陈砝码也就是砝码有多少种组合方式。1.用穷举方法,但是操作量大,且同一重量可以有多重不同砝码称取方式。2.用确定砝码称取范围(0,max_weight),并逆推组合是否成立的方式,可......
  • 砝码称重
    砝码称重importjava.util.Scanner;publicclassN1447{ staticintN=100010;//多开10个 staticboolean[][]f; staticint[]val; publicstaticvoid......
  • P1441 砝码称重 状压+bitset的组合
    这道题最妙的是移入bitset,来统计能组成那些数令bitset<2010>S;一开始初始化S[0]=1对于w[i],S<<w[i]表示原本能组成的数加上w[i]后组成的新数但原本的数我们依旧是要的......
  • P2347 砝码称重 (01背包)
    题目描述设有1g1g1g、2g2g2g、3g3g3g、5g5g5g、10g10g10g、20g20g20g的砝码各若干枚(其总重≤1000\le1000≤1000),输入输出格式输入格式: 输入方式:a1,a......
  • 【221218PH-1】要想称量出质量为39g的物体的质量,应顺次往天平右盘添加的砝码是()?
    ......
  • P8742 [蓝桥杯 2021 省 AB] 砝码称重 题解
    题目分析原题链接P8742[蓝桥杯2021省AB]砝码称重由这道题,我们不难联想到P2347砝码称重,两题的做法是相似的。因此这道题做法就是背包。其本质上都是选取砝码,求能......
  • 破碎的砝码
    一.破碎的砝码1.枚举#include<stdio.h>#definenum_count300typedefstructdata{ intnum1; intnum2; intnum3; intnum4;}data;datadt[num_count];inti......