• 魔法序列 题解

    给定一个序列 $a$,$q$ 次询问,每次询问给定一段区间 $[l,r]$ 和一个数 $x$,求


  • 数位 dp

    数位 dp 的题往往具有以下特征:

    • 要求统计满足一定条件的数的数量
    • 判定条件和数位上的值有关
    • 询问是一个区间 $l\sim r$,有时也只有上界
    • 区间很大,往往超过 $10^9$,暴力会超时

  • FWT 的矩阵理解

    在学习 FFT 的时候,我们对序列 $A,B$ 做了一次 $\mathrm{dft}$ 变换,将函数值转化为了点值,使得 $\mathrm{dft}A_i\times\mathrm{dft}B_i=\mathrm{dft}C_i$,这样我们再对点值 $\mathrm{dft}C_i$ 做一次 $\mathrm{dft^{-1}}$ 变换,就将点值还原成了序列。


  • FHQ_Treap

    废话少说,普通平衡树用 pbds 写写就好了,没必要学,不如直接来学 FHQ_Treap。


  • CF662C Binary Table 题解

    将列的状态作为 bitmask $i$,记 $a_i$ 表示状态为 $i$ 的列的出现次数,$\operatorname{pop}(i)=\min(\operatorname{popcount}(i),n-\operatorname{popcount}(i))$。


  • 「2020-2021 集训队作业」Yet Another Permutation Problem 题解

    当且仅当存在一个长度至少为 $n-k$ 的单调子串的排列才是合法的。
    计算不存在长度至少为 $n-k$ 的单调子串数量,然后用 $n!$ 减一下就是题目所求的数量。
    为了行文方便,后文中用 $k$ 来代替 $n-k-1$,那么就需要求所有单调子串的长度不超过 $k$ 的方案数。


  • 半洗牌

    一开始有 $n$ 张牌,其中 $n$ 为偶数。
    一次洗牌定义为将奇数位置的牌按顺序放在前半部分,偶数位置的牌按顺序放在后半部分,具体的说,将

    • 原先 $1,2,3,\cdots,\frac n2$ 位置上的牌放到现在的 $1,3,5,\cdots,n-1$;
    • 原先 $\frac n2+1,\frac n2+2,\frac n2+3,\cdots,n$ 位置上的牌放到现在的 $2,4,6,\cdots,n$。

  • Erdos Introduction


  • 指数生成函数

    指数生成函数


  • Elin 投篮 脚本

    毫无疑问得先安装 keyboard 库和 pyautogui 库。