华为OD机试真题精讲:剩余银饰的重量(Python/Java/C++多语言实现)
华为OD机试真题精讲:剩余银饰的重量(Python/Java/C++多语言实现)一、题目描述(2025B卷高频100分题)银匠铺有若干件银饰,需要按照特定规则熔化部分银饰,最终计算剩余银饰的总重量,规则如下:输入为:银饰重量数组weights(非空正整数数组,每个元素表示单件银饰的重量,范围 1 ≤ 重量 ≤ 1000);目标重量target(正整数,1 ≤ target ≤ 10^4);规则定义:从银饰数组中选择若干件银饰进行熔化,要求熔化银饰的总重量尽可能接近但不超过target;剩余银饰为未被熔化的部分,计算其总重量;若所有银饰总重量 ≤ target,则全部熔化,剩余重量为0;输出:一个整数,表示剩余银饰的总重量。关键约束银饰数组长度 1 ≤ len(weights) ≤ 100;目标重量 1 ≤ target ≤ 10^4;时间限制1秒,空间限制256MB;要求算法时间复杂度不高于O(n*target)(