题解 2604: 蓝桥杯2021年第十二届省赛真题-砝码称重

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

2604: 蓝桥杯2021年真题-砝码称重(unordered_set)

##unordered_set**又学到了一个重要的数据结构!!unordered_set:用于存放无序、不重复的数据(重复数据会被自动过滤)set:用于存放有序、不重复的数据unordered_map的value也不可重复,但是键和值成对出现,

dp,一维数组,两重循环

解题思路:设置数组weight_able[100000],weight_able[i]==1代表能称i重量的物品,反之则代表不能。增添砝码i,用当前能称取的所有重量与法码i的重量作和(差),更新weight_able数组,考虑到最后一个砝码时,此题求得解。

2604: 砝码称重

#思路设有数组dp[i][j],其中dp[i][j]:当前的砝码为i时,是否能称出j重量的物品当dp[i][j]时此时有三种情况:1.不放第i个砝码,此时dp[i][j]=dp[i-1][j]2.放第i个砝码,将重量减小,此时dp[i][j]=dp[i-1][abs(j-w[i])]3.放第i个砝码,

一维迭代解法

摘要:解题思路:与一楼的思路一致,但因为用set会超时,所以采用了以下方法优化参考代码:#include<bits/stdc++.h>using namespace std;int n;int g[1000……

一维dp,一个砝码拆成一正一反两个砝码

摘要:解题思路:注意事项:参考代码:#include<bits/stdc++.h>//一维dp,思路是//把每个砝码拆成一正一反两个质量,这样所有砝码都只需要放左边就行了。using namespace s……

c++哈希表去重

摘要:解题思路:注意事项:不能重复利用自己产生的重量参考代码:#include <iostream> #include<bits/stdc++.h> using namespace std; #def……