![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
贪心
文章平均质量分 63
chenxiaoran666
人要有梦想,不然和咸鱼有什么区别!
展开
-
【POJ3253】Fence Repair(合并果子的翻版)
题面:【POJ3253】Fence Repair 考虑到每一次切割所花费的代价是所切割的木板的长度,那我们就可以反向思考,合并两块木板所花费的代价是这两块木板的长度和,那么问题就转化为了将输入中给出的N块木板给两两合并在一起。于是,我们会惊奇地发现这道题其实就是合并果子的翻版,一道用小根堆来优化的贪心题! 当然了,手打堆是比较麻烦的,相比之下,C++自带的优先队列就好用多了。代码见下: #...原创 2018-04-14 13:50:56 · 239 阅读 · 0 评论 -
【BZOJ1029】[JSOI2007] 建筑抢修(堆优化贪心)
点此看题面 大致题意:有N个受到严重损伤的建筑,对于每个建筑,修好它需要T1秒,且必须在T2秒之前修完(T1与T2不是固定值),问你最多能修好几个建筑。 一看到这题,就能想到一个贪心的做法。 但是,裸贪心显然是不能过的,如果加上一个堆优化,就能够水过此题。 我们可以把修好每个建筑所需的时间放入大根堆中存储。对于每一个建筑,若能在规定时间内修好,则将ans加1,否则比较修好它所需的时间与堆顶...原创 2018-07-20 21:46:43 · 198 阅读 · 0 评论 -
【洛谷2279】[HNOI2003] 消防局的设立(贪心)
点此看题面 大致题意:给你NNN个点(其中111号点为根),并告诉你编号为2∼N2∼N2\sim N的点的父亲(fa[i]<ifa[i]<ifa[i]原创 2018-07-28 19:58:42 · 174 阅读 · 0 评论 -
【BZOJ1045】糖果传递(基于贪心的数学题)
点此看题面 大致题意:有nnn个小朋友坐成一圈,每人有a[i]a[i]a[i]个糖果。每人只能给左右两人传递糖果,传递一个糖果代价为1,求使所有人获得均等糖果的最小代价。 这题其实是一道带有浓厚数学色彩的贪心题。 我们可以先用sumsumsum来统计a[i]a[i]a[i]之和,然后将sumsumsum除以nnn,从而求出最后每个小朋友应该拥有的糖果的个数。 我们可以用s[i]s[i]s[...原创 2018-08-05 20:14:22 · 1201 阅读 · 5 评论 -
【洛谷3232】[HNOI2013] 游走(贪心+高斯消元)
点此看题面 大致题意:一个无向连通图,小ZZZ从111号顶点出发,每次随机选择某条边走到下一个顶点,并将ansansans加上这条边的编号,走到NNN号顶点时结束。请你对边进行编号,使总分期望值最小。 一个贪心的思想 由于贪心的思想,我们肯定是给期望访问次数最大的边编号为111,第二大的编号为222,第三大的编号为333,以此类推。 那么我们应该怎么求出边的期望呢? 由于边的期望...原创 2018-09-16 20:35:58 · 169 阅读 · 0 评论 -
【洛谷2577】[ZJOI2005] 午餐(较水DP)
点此看题面 大致题意: 有NNN个学生去食堂打饭,每个学生有两个属性:打饭时间aia_iai和吃饭时间bib_ibi。现要求将这些学生分成两队分别打饭,求最早何时所有人吃完饭。 贪心 首先,依据贪心的思想,肯定是吃饭时间长的先打饭,因此可以将其按吃饭时间先排序预处理一遍。 如何DPDPDP 贪心完,就是DPDPDP了。 个人认为三维DPDPDP还是非常好想的:用fi,j,kf_{i,j,k...原创 2018-10-21 12:35:34 · 196 阅读 · 0 评论