A
要满足向右递减向左递减相当于01,02的分界点,上一行始终在下一行的右侧,转化为不相交路径,套用LGV定理
B
将矩阵看作一个邻接矩阵,于是问题转化成了:请计算有多少个无向图满足所有点的度数都为2
则图应该是有若干个环组成,dp[i]表示有i个点的图的个数,然后可以枚举最后一个点所在环转移
C
(X_i)表示灯(i)是亮否
求(E(sum(x_i)^3) = E(sum X_i X_j X_k)=sum P(X_i X_j X_k))
上面将3次方展开得后式
开关矩阵(A_{ij}) 对于任意三个灯泡(x,y,z)对应矩阵三列(A_{kx} A_{ky} A_{kz}) 得到n*3的矩阵(B_{ij}) 则使的x,y,z都为亮着的概率就是从B矩阵行中任取子集使每列异或和为0的概率,子集共有(2^n)种,矩阵中的线性无关的行向量总能张成与先行相关向量异或为0的向量,设矩阵的秩为r,则概率就是(frac{2^{n - r}}{2^{n}} = frac{1}{2^r})
因为行秩等于列秩,而只有三列,只需要求列秩,枚举即可秩为0,1,2的情况即可
D
图同构,考虑枚举点的映射关系,暴力判断
E
定义dp[i] 代表长度为i的子序列个数。
pre[i][j] 记录长度为i,以j数字结尾的子序列个数。
转移时对于i,枚举dp[j] +dp[j - 1],此时重复情况为pre[a[i]][j]减去
不断更新pre,pre[a[i]][j] = dp[j - 1];
F
求(sum_{x_1 = 1}^{a_1}sum_{x_2 = 1}^{a_2}...sum_{x_n = 1}^{a_n} sum max{x_1,x_2,....x_n})
将a排序,对于(a_{i - 1}< x <= a_i),
对于(a_1 到a_{i - 1})可与随便选,方案数为(prod_{j = 1}^{i - 1}a_i)
对于(a_i到a_n),当 (a_{i - 1} + 1< x <= a_i) 需要保证(a_i到a_n)中至少一个为x,容斥得方案数(sum_{j = 1}^{n - i + 1}C_{n - i + 1}^{j} (-1)^{j - 1} * x^{n - i + 1 - j} =x^{n - i + 1} -(x - 1)^{n - i + 1}) 总方案数为前后两部分乘积
则对于x的答案为((prod_{j = 1}^{i - 1}a_i)* sum_{j = 1}^{n - i + 1} x * C_{n - i + 1}^{j} (-1)^{j - 1} * x^{n - i + 1 - j} =x^{n - i + 1} -(x - 1)^{n - i + 1})
对于后半部分另
$g(a_i) = sum_{x = 1} ^ {a_i}x*(x^{n - i + 1}-(x - 1)^{n - i + 1}) $
则后半部分为(g(a_i) - g(a_{i - 1}))
对于(g(a_i))最高项为(n - i)则其对应一个(n - i + 1)的多项式,只需要求出(n-i+2)点值后插值可得到(g(a_i))
G
斯坦纳树
等会写
H
treedp+斜率优化
等会写
J
莫队暴力