题解 1549: 蓝桥杯算法提高VIP-盾神与积木游戏

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

筛选

盾神与积木游戏 结构体与优先队列

####利用优先队列的自动排序,将每个人按照需要的积木数量排序,在获取数据时若持有数大于目标数则不将其塞进优先队列里面。#####用while循环判断遍历优先队列里面的最小所需数是否小于总持有数sum,若不小于则说明当前积木不够所有人使用。若队列为空则说明所有人都得到了积木。

python-盾神与积木游戏

解题思路:假设用大小为n*2的数组stu存储学生,stu[i][0]表示第i个学生拥有的积木,stu[i][1]表示第i个学生需要的积木这道题,如果能想到根据(stu[i][1]-stu[i][0])的值从小到大对stu数组进行排序的话,就已经成功一大半了。

盾神与积木游戏C++

解题思路:排序思路:按(拥有积木数-需要积木数)由大至小对小朋友进行排序,这样需要得到帮助积木多的小朋友就排在后面,前面的小朋友可以积累更多的帮助积木给后面的小朋友注意事项:参考代码:#include#include#includeusingnamespacestd;boolcmp(pair{retu

贪心盾神与积木游戏(超时有点烦)

摘要:解题思路:     贪心点:先帮差值最小的完成积木作品注意事项:参考代码:#  时间超限:   64 分      运行时间: 6803ms  m = int(input()) for _ in ……

蓝桥杯算法提高VIP-盾神与积木游戏

#按需求的积木数升序排列,每一步先满足最小需求的小朋友##解题思路​很明显用贪心思想来看就知道解决此题的其中一条思路就是:**每一步先满足需求最小的小朋友**,然后将他的积木贡献出来成为“公共积木”,以此循环。如果执行到某一步:**现能提供的最大数量的积木连最小的需求也无法满足,

蓝桥杯算法提高VIP-盾神与积木游戏-题解 \贪心、面向对象(Java代码)

解题思路:根据需要积木的数量与持有积木的数量的差值进行排序,小的在前面。这样释放的公共积木越多,sum来存公共的积木数,count来统计完成积木搭建的小朋友数量,如果等于n则代表全部完成。注意事项:参考代码:importjava.util.Arrays;importjava.util.Scanner;