摘要: 设 $f(i,j)$ 表示压缩后长度为 $i$,原串长度为 $j$ 的方案数。 则最终答案就是 $\sum_{i=1}^{n-1}f(i,n)$。 考虑转移,枚举下一段的长度 $k$,设长度的位数为 $x$,则有 $f(i+1+x,j+k)\gets f(i+1+x,j+k)+25\times f( 阅读全文
posted @ 2022-11-09 21:44 Kobe303 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 令 $dis_i$ 表示 $i$ 到离它最近的充电站的距离。 这个很好办,建立一个超级源点,连向所有充电站,边权为 $0$,跑一遍最短路即可。 设走到点 $u$,剩余电量为 $x$,所需的最小容量是 $c$,则有 $$dis_u\le x\le c-dis_u$$ 因为 $u$ 点剩余的电量一定可以 阅读全文
posted @ 2022-11-09 20:50 Kobe303 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 考虑两种暴力。 直接枚举同颜色的点,枚举起点和终点,组合数计算路径数即可,复杂度 $\mathcal O(k^2)$,其中 $k$ 为该颜色的点的个数。 做一遍 $\mathcal O(n^2)$ DP,遇到该颜色的点就统计答案。 根号分治,若 $k\le n$,采用暴力一,易知复杂度不超过 $\m 阅读全文
posted @ 2022-11-09 20:00 Kobe303 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 套路的二项式反演。 题目要求实际就是两种颜色的棋子所占的行和列都不能有交。 设 $f(i,j,k)$ 表示在 $i$ 行 $j$ 列中放 $k$ 个棋子使得每行,每列都不为空的方案数。则最终答案为: $$\sum_{i=1}^n\sum_{j=1}^m\sum_{k=1}^{n-i}\sum_{l= 阅读全文
posted @ 2022-11-09 19:48 Kobe303 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 假设当前在确定玩家 $p$ 是否能成为唯一的赢家。 假设 $p$ 能赢下所有不确定的比赛,令 $win$ 表示他赢的数量。 如果 $win=0$ 显然他不能成为唯一的赢家,下面都假设 $win\ge1$。 考虑网络流建图。 建立源点 $S$,汇点 $T$,$A_{i,j}$ 表示玩家 $i$ 与 $ 阅读全文
posted @ 2022-11-09 15:47 Kobe303 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 乘积是立方数说明分解质因数之后每个质数的指数都是 $3$ 的倍数,于是可以对每个数的质因数进行哈希,指数对 $3$ 取模,哈希之后求一遍前缀和,如果 $H_r=H_{l-1}$ 就说明是立方数,否则不是。 Code: #include <bits/stdc++.h> using namespace 阅读全文
posted @ 2022-11-09 15:05 Kobe303 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 对于一个 $p\times m$ 的矩阵 $A$,与 $m\times q$ 的矩阵 $B$,定义广义矩阵乘法 $A\times B=C$ 的结果是一个 $p\times q$ 的矩阵 $C$,满足: $$C_{i,j}=(A_{i,1}\otimes B_{1,j})\oplus(A_{i,2}\ 阅读全文
posted @ 2022-11-09 14:50 Kobe303 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 先来研究没有初始球情况下的简单版本: $n$ 个小球,$m$ 个盒子,每个小球等概率地放到盒子里,这样有 $n^m$ 种方案,每种方案的贡献是每个盒中球个数的乘积,计算所有方案贡献总和。 设 $x_{i.j}$ 表示第 $i$ 个盒子中是否放入了第 $j$ 个球,取值只有 $0$ 或者 $1$。 对 阅读全文
posted @ 2022-11-09 12:55 Kobe303 阅读(24) 评论(0) 推荐(0) 编辑