随笔分类 -  思维-贪心

摘要:题目链接 一开始的想法是让物品按数量从小到大或者从大到小贪心,然而怎么想都不对,最后发现应该按价格贪 首先求出最终的物品数量序列(扫一遍即可) 然后把所有物品按价格从大到小排序,每次选价格最大的去匹配尽量小的数量(必须大于等于原来的数量),用multiset实现即可 1 #include<bits/ 阅读全文
posted @ 2020-03-01 17:26 jrltx 阅读(292) 评论(0) 推荐(0) 编辑
摘要:题意:有一个长度为n的序列,你每次可以选择两个相邻的元素交换,求把这个序列排成单峰序列的最少交换次数。 方法一:将元素按数值从大到小排序(保存原来的位置),把最大的插在中间,剩下的依次往两边放,依次考虑每个数该放在左边还是右边,只考虑后加入的数对已有的数的贡献。由于前面加入的数的次序对后加入的数无影 阅读全文
posted @ 2019-08-22 14:28 jrltx 阅读(283) 评论(0) 推荐(0) 编辑
摘要:题意:有n个怪物和k种属性,当且仅当你的每种属性都大于等于怪物的属性才可以击杀它,且击杀怪物可以提升你一定的属性值。求可击杀怪物的最大数量以最终的属性值。 这不就是银行家算法里的安全性检验么? 本题的时限比较严,需要用fread来加速读入 第一种做法是对每种属性建一个优先队列,每个优先队列里存放怪物 阅读全文
posted @ 2019-06-28 08:20 jrltx 阅读(170) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示