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都得有这些性质才能用)
- 有区间修改(不然没必要用)
- 有区间查询需要结果可合并(线段树的基础)(不可合并的一般只能莫队)
- lazy:要求好update,区间存储空间复杂度 \(O(1)/O(log)\)
K
题意:\(n\) 个珠子首尾相连,染成三种颜色,其中一种颜色要求不超过 \(k\) 个,求染色方案数
解法:数学题,鸽。。。

浙公网安备 33010602011771号