
贪心
crazy morning
去西之西处,驾驭长风
展开
-
P7412 [USACO21FEB] Year of the Cow S
题目 题目 思路 裸贪心,记得开long long,差点没开 code: #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #include<queue> using namespace std; inline long long read() { long long ret,c,f=1; while (((c=getchar())&g原创 2021-08-19 16:21:25 · 265 阅读 · 0 评论 -
P7725 珍珠帝王蟹(Crab King)
题目 题目 思路 背景好评!图片……看起来像个难以言述的玩艺 显然是个结论贪心 先考虑题目阉割版:无负数乘法 显然是正数和*乘法积-负数和 那么现在加入负数乘法 为行文方便,设正数和为zadzadzad,负数和为fadfadfad,最大负数乘法参数为mxfmxfmxf,除mxfmxfmxf外的乘数积为cfcfcf拼音+英文 当然发现负数乘法有偶数个时,负负得正是最优的 同时当一个数的绝对值更大时,若结果可以为正,当然要乘更多的数 所以结果为(不取模)(zad∗mxf+fad)∗cf(zad*mxf+fad)原创 2021-07-18 22:02:49 · 246 阅读 · 0 评论 -
P1323 删数问题
题目 题目 思路 我们可以把这道题拆成2道题: 删数问题(别误会,这是黄题)和丑数 然后我们把它们合并在一起就行了 code: #include<cstring> #include<algorithm> #include<cmath> #include<iostream> #include<queue> #include<vector> using namespace std; int k,m; priority_queue<in原创 2021-02-07 13:18:10 · 246 阅读 · 0 评论 -
P3619 魔法
题目 题目 思路 显然这破题目是一道贪心,但是我们需要考虑怎么贪。 如果增加的时间都是正数,显然我们先要增加的更多的最好。 如果一个增加正数,一个增加负数,显然我们先要正数的。 重点就在于2个都是负数的情况,我们对于2个都是负数的情况,设一个为x,另一个为y,通过贪心的一系列推柿子,发现当且仅当x.t+x.b>y.t+y.b时,先要x更优。 剩下直接模拟就好了 code: #include<iostream> #include<algorithm> using namespac原创 2021-02-07 10:33:20 · 190 阅读 · 1 评论 -
P3173 [HAOI2009]巧克力
题目 题目 思路 那么仔细研究一下,我们会发现不管怎样,横着的几刀和竖着的几刀总共一定切了(n−1)∗(m−1)(n-1)*(m-1)(n−1)∗(m−1)刀,那么我们就只需要考虑顺序的问题了,对于相同方向的刀,显然花费越高就越早切,那么不同方向的刀呢?这里运用微扰法可以证明,花费越高也要越早切。 上述思路的理由在于我们计算的方法,由题目的样例,我们可以发现每一道的计算方法是:(前面切的不同方向的刀的总数+1)*目前该刀的价值。 code: #include<iostream> #include原创 2021-02-07 10:16:57 · 343 阅读 · 0 评论