动态规划,用set代替list就可以跑完全部数据 解题思路:动态规划,新加的砝码和目前所得的质量可以相加,相减(两种情况,新砝码减旧质量或旧质量减新质量),将所得的结果(大于0)存入dp,供下一次使用,注意事项:中间要专门设一个列表,用于存储新称的重量,不能直接存入dp,用set集合可以比list速度快参考代码:n=int(input())arr=l 题解列表 2024年04月08日 0 点赞 0 评论 743 浏览 评分:9.9
2604: 蓝桥杯2021年真题-砝码称重(unordered_set) ##unordered_set**又学到了一个重要的数据结构!!unordered_set:用于存放无序、不重复的数据(重复数据会被自动过滤)set:用于存放有序、不重复的数据unordered_map的value也不可重复,但是键和值成对出现, 题解列表 2024年03月30日 5 点赞 0 评论 1078 浏览 评分:9.9
dp,一维数组,两重循环 解题思路:设置数组weight_able[100000],weight_able[i]==1代表能称i重量的物品,反之则代表不能。增添砝码i,用当前能称取的所有重量与法码i的重量作和(差),更新weight_able数组,考虑到最后一个砝码时,此题求得解。 题解列表 2024年03月25日 1 点赞 0 评论 687 浏览 评分:9.9
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个砝码, 题解列表 2023年11月16日 0 点赞 0 评论 733 浏览 评分:9.9
2604: 蓝桥杯2021年第十二届省赛真题-砝码称重(Java有set去重方法也有dp动态方法)要先看解释再看图 摘要:解题思路:注意事项: 将砝码独立来看,在当前砝码称出重量x的情况下,对于砝码i都有三种操作:x+砝码i的重量(放同侧)x-砝码i的重量(放异侧)x(不放)显然前面两种操作才有可能产生不同的重量。…… 题解列表 2023年04月07日 0 点赞 1 评论 982 浏览 评分:9.9
巧用集合,迅速秒杀 解题思路:利用python中的集合解决注意事项:输入时使用map函数参考代码:n=int(input())a=list(map(int,input().split()))b=set()b.add(0)foriina:forjinlist(b):b.add(abs(j-i))b.add(j+i)prin 题解列表 2023年04月06日 1 点赞 0 评论 868 浏览 评分:9.9
dp——个人感觉解释的很容易理解 摘要:参考代码:#include <iostream> using namespace std; const int N = 110, M = 300000;//大一点好 int n,sum,w[N…… 题解列表 2023年04月06日 0 点赞 1 评论 1153 浏览 评分:9.9
蓝桥杯2021年第十二届省赛真题-砝码称重 摘要:解题思路:注意事项:参考代码:#include<iostream>using namespace std;const int N=1e5+10;int w[110];int dp[110][N];//…… 题解列表 2023年04月02日 0 点赞 0 评论 636 浏览 评分:0.0
简单递归暴力求解 解题思路:通过递归遍历每一种情况,并通过剪枝减少遍历次数节省时间注意事项:暴力求解可能得不到满分,但可以得到大多数分值参考代码:#includelonglongintn;longlongintw[10000];longlonginta[10000];longlonginte=0;longlongint 题解列表 2023年04月01日 0 点赞 0 评论 1040 浏览 评分:9.5
一维迭代解法 摘要:解题思路:与一楼的思路一致,但因为用set会超时,所以采用了以下方法优化参考代码:#include<bits/stdc++.h>using namespace std;int n;int g[1000…… 题解列表 2023年04月01日 0 点赞 0 评论 535 浏览 评分:0.0