贪心
文章平均质量分 86
贪心算法专栏
秦三码
石油大学
展开
-
A. Prefix Sum Primes
首先显然是先选2比较好,因为相对于2,1会更加灵活,如果耗费了1再选2,那么2就会变得“愚钝”,也就是会忽略很多质数,但是如果我们配合着1,2就变得灵活起来,是贪心的思想。另外本题非常考验细节,比如中途全部或者某个用完,最终没用完的情况都需要考虑到。...原创 2022-08-15 13:46:35 · 361 阅读 · 1 评论 -
B. Neko Performs Cat Furrier Transform
这类改变的题目,如果没有通解的话会非常混乱,加1异或某数,各个位置一会是0一会是1,我们考虑一位一位修改,每次寻找一个最高位的0,异或上某个正好在这一位上的2^n-1,那么就成功完成了修改,然后下一个加1之后接着寻找即可,寻找之前别忘了判断是否全是1即可。...原创 2022-08-15 13:03:43 · 94 阅读 · 1 评论 -
A. The Party and Sweets
然后就考虑b[n]原创 2022-08-14 22:38:42 · 176 阅读 · 0 评论 -
D. Bicolored RBS.
我们把depth/2作为第一端的极限,遇见左括号我们加,如果这时候dep原创 2022-08-14 15:41:48 · 165 阅读 · 0 评论 -
D. Vus the Cossack and Numbers
贪心一下,先都向下取整,求出来和,小于零就加1,加1的情况只在a[i]不等于b[i]的时候。原创 2022-08-14 13:31:15 · 2345 阅读 · 1 评论 -
B. Flip the Bits
只能翻转前缀是突破口,既然从头开始翻转,那么我们就可以从最后开始匹配,这样匹配完一个再匹配下一个的时候不会产生影响,只需要记录当前翻转次数,当前位置相等的时候,翻转次数是偶数那匹配成功,如果是奇数那么还需要保证本次能够反转成偶数,也就是前缀和的二倍等于当前位置。同理两者不等的时候也是如此。...原创 2022-08-06 10:26:32 · 92 阅读 · 0 评论 -
C. LIS or Reverse LIS?
要让最小值最大,也就是正反的LIS尽量差不多大,可以把最大的放在中间,然后大小递减依次排开,也可以把最小的放在中间,但这样一旦出现了大于等于3的元素,就会把我们一边给搞乱,所以直接统计小于等于2次的元素,除以2上取整即可。因为最终贡献每个数最多贡献两次。...原创 2022-08-04 10:32:55 · 135 阅读 · 0 评论 -
B. Paranoid String
又例如 0000100010100001 最后一个1可以借助前面的0为其扫清障碍,因为10=0,这样的话可以一路平推到首部。从后往前考虑,当前若是1,前面是1的话,那么该位置无法向前扩展,否则,一旦前面是0,那么i位置一定能够或者i-1次的缩小为1。000010000100111100000000010也是如此,一路平推。例如 000000001。同理 10000000000000000。最后别忘了加上长度,单个也算。...原创 2022-08-03 16:52:40 · 217 阅读 · 0 评论 -
C. awoo‘s Favorite Problem--Educational Codeforces Round 130 (Rated for Div. 2)
我们从末尾往前扫描,如果相等那么继续,否则,如果b对a,往前找a, c对b,往前找b,找不到或者不是这种配对,那么就无解。第一个置换只能有两个作用,那就是aaaab把b放到前面,abbbb把a放在后面。...原创 2022-08-03 14:20:56 · 180 阅读 · 0 评论 -
C. Keshi Is Throwing a Party- Codeforces Global Round 17
二分和贪心,二分枚举选的个数,判定函数里面运用贪心思想,能选就选。选一个的话,如果剩下的k-cnt-1个少于a[i],并且已经被选的 cnt原创 2022-08-02 19:21:50 · 216 阅读 · 0 评论 -
A. Strange Birthday Party- Codeforces Round #694 (Div. 1)
很巧妙的贪心,突破点在于c是递增的,这也就说明了,k大的,它能选便宜的也能选送金额大的钱。k小的,它能选便宜的,也能送金额小的。由于我们尽可能选c小的,尽量多的选小的。如果让k小的先选,那么不仅浪费了它能选小的机会,还挤占了k大的选小的机会。所以先选k大的,充分利用。...原创 2022-07-29 14:09:06 · 92 阅读 · 0 评论 -
CF1483A Basic Diplomacy
所以我们还有再加上一次贪心,那就是先进行总天数少的,比如上图案例,我们从下到上,总体一次贪心,内部一次贪心,那么问题就得到了解决。最容易想到的贪心是,对于m个组,依次遍历,找到其中最玩的天数最少的来增加一天,如果最少的也不能加,那么输出-1。显然这种方法是不可取的,一旦我们最后一天只有一个可选,而这个恰恰被选满了,这样就。...原创 2022-07-25 12:27:41 · 103 阅读 · 0 评论