洛谷$P$2468 粟粟的书架 $[SDOI2010]$ 主席树

时间:2019-06-12
本文章向大家介绍洛谷$P$2468 粟粟的书架 $[SDOI2010]$ 主席树,主要包括洛谷$P$2468 粟粟的书架 $[SDOI2010]$ 主席树使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

正解:主席树

解题报告:

传送门!

题目大意是说,给定一个矩形,然后每次会给一个,这个大矩形中的一个小矩形,询问从小矩形中最少选多少个数字能满足它们之和大于等于给定数字$x$

看起来很神的样子,完全不会鸭嘤嘤嘤

然后看到数据范围,对于百分之五十的数据,$balabala$,对于另外百分之五十的数据,$balabala$,不难意识到,只要分别把这两个数据范围的数据分别做了这题就做完了嘛

所以这题其实是个二合一来着

首先考虑$r=1$,这就相当于是只有一行数,然后每次给定一个区间,问至少要选多少个能有$sum\leq x$,考虑权值主席树呗

仔细港下,手下一个显然的贪心想法是说,能选大的就尽量选大的所以在$query$的时候就有优先右子树,当右子树的$sum$是够的时候直接往右子树走就好,否则就把右子树的贡献算上然后往左子树走

其他都是裸主席树不港$QwQ$

然后对于$r,c\leq 200$,可以考虑一个大胆的想法,用个类似桶排的方法把这个做了$QwQ$.

考虑设$sum_{i,j,k}$表示在$(1,1),(i,j)$这个矩阵内数值大于等于$k$的数之和,$num_{i,j,k}$表示再$(1,1),(i,j)$这个矩阵内数值大于等于$k$的数的数量

二分下就好

噢还有个更大胆的想法,,,

可以考虑把上一个部分分当做这个部分分的弱化版,考虑开200棵主席树,强做,,,

居然也过得去,,,?

好神啊我$jio$得$hhh$

代码是不会有的不要想辣_(:з」∠)_

原文地址:https://www.cnblogs.com/lqsukida/p/11008775.html