题解
并查集
奇偶树
题面
有一棵  $n$  个节点的树,节点编号为  $1\sim n$ 。树的边权的取值只有  $0$  和  $1$ ,且应当满足  $Q$  个条件。每个条件形如  $(u,v,x)$ ,其中  $u$  和  $v$  是树中节点的编号, $x$  是  $0$  或  $1$ 。
条件的含义为树上从  $u$  到  $v$  的路径上的边权和在模  $2$  意义下应与  $x$ …
Jayun 发布于 2023-10-18 09:25:56
00
Hash概率
Osmosmjerka
题目描述
给定一个  $M \times N$  的字母矩阵,以下面的为例:
honi
hsin
接着我们将其进行无限延伸,得到:
...honihonihonihoni...
...hsinhsinhsinhsin...
...honihonihonihoni...
...hsinhsinhsinhsin...
在无限延伸后得到的新矩阵后,我们随机选取其中一个区域的字 …
Jayun 发布于 2023-10-17 16:07:44
00
构造稀疏表(ST表)
[Ynoi2015]ただいま帰りました
題目大意
維護一個序列  $a_i$ ,兩個操作:插入一個數、求:
$$\sum_{d=L}^R\text{mex}\left(\left\{\left\lceil\frac{a_i}{d}\right\rceil\right\}\right)
$$
題解
離綫。考慮整除后分塊,用  $t_{d,i}$  分別維護每個塊最早存在數(即題目中的隨從)時是第幾個 …
Jayun 发布于 2023-10-17 11:31:55
00
线性动态规划(线性 DP)极角排序
Satanic Panic
收录在 u 群漫游记,详见那,这里放代码。
代码
const int N = 310;
inline ll Read() {
	ll x = 0, f = 1;
	char c = getchar();
	while (c != '-' && (c < '0' || c > '9')) c = getchar();
	if (c == '- …
Jayun 发布于 2023-10-12 09:41:23
00
调整法
k 部图判定
题面
正在打集的 Displace_ 瞅了一眼U群,发现大家在讨论 NPC 问题,看着集成战略的地图,他突然想到了一个经典 NPC 问题:图染色。
经典的图染色问题是一个  $n$  个点  $m$  条边的无向连通图,用  $k$  种颜色来给每个点染色,使得任意有边连接的两个点颜色不同,构造一个方案。
 $k=1$  是简单的,当  $k=2$  时问题的难度就骤增了,所以仁慈的 …
Jayun 发布于 2023-10-11 16:09:17
00
拉格朗日插值法
tyvj 1858 XLkxc
题意
给定  $k,a,n,d$ 。定义:
$$f(n)=\sum_{i=1}^ni^k
$$
$$g(n)=\sum_{i=1}^nf(i)
$$
求  $\left(\sum_{i=0}^ng(a+id)\right)$  在模  $1234567891$  意义下的值。
题解
嗟乎!逝者如流,滚滚而去!已经忘记多项式了。
总之,根据 CF622F, $f(n) …
Jayun 发布于 2023-10-10 21:16:27
00
构造
游戏
题面
Alice 和 Bob 又在一起在玩游戏,这次游戏的规则是:
Alice 先手,Bob 后手,轮流进行操作,共有  $m$  轮操作,有一个集合初始为  $S=\{a_1,a_2,\cdots,a_n\}$ 。
第  $i$  轮操作有一个参数  $b_i$ ,当前轮的操作者有以下两个选择:保留  $S$  中所有是  $b_i$  倍数的数字,或者保留  $S$  中所有不是  $ …
Jayun 发布于 2023-10-10 15:09:13
00
Tarjan并查集
连通块
题面
小 X 有一张  $n$  个节点的图,每个节点有一个点权。但让小 X 感到生气的是,这张图上并没有任何的边,于是他决定钦点一些边。
小 X 喜欢 gcd 和合数,所以小 X 的钦点规则与 gcd(最大公约数)和合数有关。具体来说,对于  $2$  个点,如果它们点权的最大公约数为合数,那么 小 X 就会钦点它们之间连一条边。
小 Y 看到了小 X 幼稚的行为,决定把他批判一番。他知 …
Jayun 发布于 2023-10-10 11:12:47
00
深度优先搜索(DFS)
[NOIP2018 提高组] 旅行
题目大意
给定一棵树或基环树,从起点出发,找到一个字典序最小的遍历序列。
题解
可以用 STL set 来存储边,这样字典序排序比较好做。如此,树的部分就直接遍历一遍即可。
考虑基环树的情况,先找到环,然后枚举删除环的每一条边,总复杂度是  $\mathcal{O}(n^2)$  的。
代码
const int N = 5e4 + 5;
inline ll R …
Jayun 发布于 2023-10-10 10:25:28
00
