BUPT 2023 Spring Training #9

原题:2021杭电多校-第一场

卡在两道题上,然后就没有然后了

A

对于 \(i \in [0,\lceil\frac n2\rceil-1] \cap {\mathbb Z}\),取模时一定可以取到(\(n \equiv i({\rm mod}\ n-i)\)

对于 \(i \in [\lceil\frac n2\rceil,n] \cap {\mathbb Z}\),取模时一定无法取到(不存在满足条件的比他大的模数)(他们的取模结果都在上面)

直接对于每一位讨论贡献即可

B

口胡 KD-Tree,没来得及码

C

D

10种物品,容量1e18的无限背包

E

分类讨论,质数对 \(2\) 连,合数对它的因数连

F

题意:找最短的区间异或和小于 \(k\) 的子段
解法:转化为两点异或和,01Trie上筛和当前值异或结果 \(\leq k\) 的结果中的最近点即可

G

题意:从 \(1\) 开始,每次随机向另一个人传球,已知传了 \(t\) 轮后回到 \(1\) 的概率,求 \(t\)
解法:推公式,bsgs求离散对数,结果发现式子推挂了,直接挂掉

H

题意:求列上不递减的最大子矩阵面积
解法:

  • 我的:每一列上的最大递增子段+每一行递增单调栈
  • 队友的:直接dp

I

题意:求最小的 \(D\),满足割去部分边权 \(\leq D\) 的边之后能划分为 \(K\) 个连通子图
解法:从小到大加边,边权一样的一起加边,连通子图数恰好为 \(K\) 时的值即为解,不存在即为 \(-1\)

J

已知 \(n\) 个点的坐标,第 \(i\) 个点横坐标为 \(i\)\(m\) 次询问区间
解法:本来想莫队+扫描线的,结果时间复杂度不够 (果然是HDU)。最后发现可以扫描线+标记永久化线段树套平衡树,不过不想码了,直接摆

  • 以下是关于lazy和mark的一些整理:
    • lazy:要求好update,区间存储空间复杂度 \(O(1)/O(log)\)
      • 典型应用:区间覆盖,以及在此基础上的吉司机线段树
    • mark:要求已知区间存储的数据,可以 \(O(1)/O(log)\) 的时间复杂度求解区间中的解
      • 典型应用:查询区间内 \(k\) 的前驱/后继/rank(标记永久化线段树套平衡树)(没有rank可以用set代替)
    • 基础要求:(lazy和mark都得有这些性质才能用)
      • 有区间修改(不然没必要用)
      • 有区间查询需要结果可合并(线段树的基础)(不可合并的一般只能莫队)

K

题意:\(n\) 个珠子首尾相连,染成三种颜色,其中一种颜色要求不超过 \(k\) 个,求染色方案数
解法:数学题,鸽。。。

posted @ 2023-04-17 15:44  Sherlocked_hzoi  阅读(19)  评论(0)    收藏  举报