摘要:
题解 一堆细节的题。 首先答案一定不超过 \(123456789000000\)。 考虑枚举 \(N\) 的最低位填啥。由于 \(10x,10x+1,\dots,10x+9\) 这些数除去最低位以外的位置都相同,因此可以把它们并在一起,然后递归下去。对于每个“数”维护一个数集,表示需要有这个数集里的 阅读全文
摘要:
题解 都 2021 年了,不会还真有人用 SPFA 做最短路题吧? 设 \(f_i\) 为消灭 \(i\) 需要的最小花费,则 \(f_i=\min(s_i,k_i+\sum_{(i,j)\in G} f_j)\)。这个转移有环,但考虑一个性质:\(s_i\) 最小的点一定不会被其他点更新。于是我们 阅读全文
摘要:
题解 好妙的一道题。 将每个串都抽象成二维平面上的一个点 \((x_i,y_i)\),\(x_i\) 为其中 N 的个数,\(y_i\) 为 B 的个数。 二分答案 \(mid\),那么对于一个点 \((x_i,y_i)\),能通过不超过 \(mid\) 次操作到达它的点的范围是一个凸六边形,所以可 阅读全文
摘要:
题解 当然有广义 SAM 做法,但我用的是 AC 自动机。 设 \(n\) 个输出的串为 \(\langle s_1,s_2,\dots,s_n\rangle\)。 题目中给出的字符串实际上就是一棵 Trie 树,对这棵 Trie 建立 ACAM。 考虑“子串”实际上就是前缀的后缀。对于任意的串 \ 阅读全文
摘要:
题解 CSP 考前做道 manacher。 一个性质:一个字符串的本质不同回文子串个数是 \(\mathcal{O}(n)\) 级别的。 于是枚举这 \(\mathcal{O}(n)\) 个回文子串,逐个判断即可。 具体枚举方式见代码。 代码 #include <cstdio> #include < 阅读全文
摘要:
题解 首先显然若 \(x\nmid y\) 则无解。否则,令 \(y\gets \frac{y}{x}\)。 设 \(f_{k,g}\) 为选若干个数 \(\langle a_{i=1}^n\rangle\) 使得 \(\sum_{i=1}^n a_i=k\) 且 \(g\mid \gcd(a_1, 阅读全文
摘要:
常用 chkmin,chkmax template<typename T> bool chkmin(T& x,const T& y){return y<x?(x=y,1):0;} template<typename T> bool chkmax(T& x,const T& y){return x<y 阅读全文
摘要:
题解 \(2900\) 就这? 可以发现要求的无非是: \[ \begin{aligned} 2\sum_{A\subset S} [\gcd\{A\}=1]\lvert A\rvert-n\sum_{A\subset S} [\gcd\{A\}=1] \end{aligned} \] 考虑一个常见 阅读全文
摘要:
题解 可以发现,对于巡演的路线 \(x\to y\) 和 \(a\to b\),若 \(\min(x,y)\neq \min(a,b)\) 或 \(\max(x,y)\neq \max(a,b)\),则其答案互不影响。不妨设 \(x<y\),我们需要对每一种 \((x,y),(y,x)\) 求出最小 阅读全文
摘要:
2021 10.10 正睿 NOIP 十连测 Day5 A 合法的操作范围是 \([2,n-1]\),我写成了 \([1,n]\)。 10.23 CSP-S 2021 请欣赏我的快读: template<typename T> void Read(T &_x){ _x=0; int _f=1,ch= 阅读全文