ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

2025 11 8

2026/8/5 16:49:59 拓冰建站 浏览量
2025 11 8
  • CF1967B2 0.25 数学 积累trick \(c|d\) 隐藏了一个 \(c<=d\)
    • 首先我很快推出来的是,设 \(a = c\cdot k,b = d \cdot k\),且 \(\gcd(c,d)=1\),则条件 \(b \cdot \gcd(a,b)\)\(a+b\) 的倍数可以转化为 \(c+d | k\),关键性质是 \(\gcd(c+d,c) = \gcd(c,d) = 1\),故 \(c+d|d\cdot k\) 可以变为 \(c+d|k\),故我们,到这里我想的是看看能不能直接莫比乌斯反演,然后我发现毕竟困难/jk,然后这里思路就断了
    • 观摩了题解我发现了一个特别牛的性质就是说 \(c+d|k\)\(c<k,d<k\)\(c<\frac{a}{c}\)\(c^2 < a\) 故我们可以直接枚举 \(c\)\(d\) 进行计算
    • 感觉没做出来的话是因为没有想到 \(c|d\) 可以转化成 \(c<=d\)
  • P10465 0.25 发现题目性质题,ad
    • 首先我想到了考虑最终状态,每个双端队列的下标一定是 先递减再递减的,元素是 单调不降的,并且元素是在从小到大排序后的序列中连续的一段
    • 所以我就考虑是否可以把所有元素从小到大排序,记录初始的下标,然后去贪心地选择序列即可
    • 相同的元素一定是要放在同一个集合的,不然会无解或者不优
  • CF1997E 0.25 线段树,树状数组
    • 法一
      • 感觉想的很快,就是直接从 \(k=n\) 开始从大到小枚举k,我们可以发现怪物肯定是由被选择变成不被选择的,故我们直接上可持久化线段树维护
      • 对于每个 \(k\) 直接线段树上二分 \(\frac{n}{k}\) 次即可,二分总和为 \(O(N \log{N})\) 的加上 \(\log{N}\) 的复杂度就是 \(O(N \log{N}^2)\) 的,空间是 \(N \log{N}\)
      • 这道题几乎是10min不到就想出来了的,证明自己的线段树敏感度增强了
    • 法二
      • 带上了一点点脑子,我们可以预处理 \(f_i\) 表示最小的能让第 \(i\) 个怪物进行战斗的 \(k\)
      • 然后用二分用树状数组维护即可,可以优化空间
  • CF2004E 0.25 SG函数
    • 很明显是一道博弈论的题目,发现有 \(n\) 堆实际上只需要把每一堆的 SG 值异或起来就行了
    • 考虑如何求解 SG 值
    • 考虑 SG 值的定义是 SG(0) = 0,SG(1) = 1, SG(2) = 0
    • \(x>=3\)\(x\) 是质数
      • \(SG(x) = mex_{y=1}^{x-1} {SG(y)}\)
      • 很容易发现它的值就是它是第几个质数
    • \(x\) 不是质数
      • \(SG(x) = mex_{y=1}^{x-1} {SG(x-y)}, (x,y) = 1\)
    • 然后这里我卡了很久,大概20多min,实在做不下去牢了翻了题解,发现题解 “通过打表发现……
    • 积累trick : 遇到SG函数题的方式最好是打一个表后再猜结论再证明
    • 所以可以发现合数 \(x\)\(SG(x) = SG(y)\) 其中 \(y\)\(x\) 的最小质因子