强基省选写题记录
2021.12.6
-
线段树询问两个答案的时候,要分开询问。如果用
pair
类型的进行双询问,可能会直接T
掉。 -
scanf
和cin
可以混用,会更快。
2021.12.7
著名新手杀手题。
-
维护区间和其实没有必要写
pushdown
,只需要把子节点都改掉,来一个update
就好了。 -
维护区间最大子段和的
trick
:维护左起最大lmax
,右起最大rmax
,区间和sum
和最大子段和seg
. 每次更新seg
,其实你只有三种情况:左起最大;右起最大;横跨两端。前两个直接用update
维护,后面一个可以从中间劈开区间,用 \([l,mid]\) 的右起最大和 \([mid+1,r]\) 的左起最大拼起来。
2021.12.12
用树状数组维护桶即可。
2021.12.16
Treap
维护即可。注意细节。
2021.12.23
P3846 【TJOI2007】 可爱的质数/【模板】BSGS
题解. 也是个板子题。
2021.12.25
题解,但不是用 Lucas
板子解决的。是自己用朴素做法实现的,比 Lucas
复杂度劣。
2021.12.26
直接用桶统计约数,统计一遍就好了。
P4552 【Poetize6】 IncDec Sequence
利用最大值和最小值解决。
P2252 【SHOI2002】取石子游戏|【模板】威佐夫博弈
博弈论板子,有一点找规律的成分。
异或成为博弈论的一个常考点。再加一点特殊判断就没问题了。
根据度确定起点和终点。然后每次走字典序最小的点就可以了。
2022.1.2
求度,只建立 \(u \rightarrow v\) (\(d_u < d_v\)) 的边。然后暴力双重枚举即可。
2022.1.16
有点复杂的 \(n^2\) 动态规划。状态和转移都比较有技巧。
2022.1.21
学过线性代数,这就是板子题了。化为上三角秒杀。
2022.1.22
利用异或判断,可巧妙构造方案。