专栏文章

2025 ICPC WF

题解参与者 2已保存评论 1

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
1 条
当前快照
1 份
快照标识符
@minwcgqa
此快照首次捕获于
2025/12/02 09:25
3 个月前
此快照最后确认于
2025/12/02 09:25
3 个月前
查看原文

A

考虑根被插入的时间,在根被插入之前的数都会放到同一个儿子,插入之后的数会交替往两边插入,形式一定形如 LLLLXRLRL\texttt{LLLLXRLRL}RRRRXLRLRL\texttt{RRRRXLRLRL},这样我们就递归到了儿子的子问题。合并的时候分类讨论一下 szlssz_{ls}szrssz_{rs} 的大小关系,暴力合并的复杂度只有 O(min(szls,szrs))O(\min(sz_{ls},sz_{rs})),时间复杂度 O(nlogn)O(n\log n)

D

每走一步就能得到走的方向和其他空地方向的优先级关系,暴力维护有没有出现环就做完了。O(rc+s)O(rc+|s|)

E

题目相当于每次连 (a+n,b)(a+n,b) 的双向边,询问有多少 (u,v)(u,v) 满足有 x{u,u+n},y{v,v+n}x\in\{u,u+n\},y\in\{v,v+n\}(x,y)(x,y) 连通。
考虑并查集合并的时候启发式合并连通块的颜色数,然后我们先认为答案是每个连通块的 (sz2)\binom{sz}2 的和,这样只有一个点对在两个连通块同时出现的时候才会算重,考虑维护这样的点对个数。
合并两个连通块 S,TS,TST|S|\ge|T|) 的时候,首先个数要减去 (ST2)\binom{|S\cap T|}2,然后对于 xT,xSx\in T,x\notin S,如果 xx 在第三个集合 UU 中出现,个数要加上 SU|S\cup U|。由于每个数只出现两次,可以离线下来把每个相同的数对放在平面上 DFS 序对应的点二维数点。时间复杂度 O(nlog2n+mlogn)O(n\log^2n+m\log n)

F

pp 从大到小贪心考虑,pp 的位置必定填的是一个所有猫的位置集合的交中的数,如果交中所有数都已经在更大的 pp 中出现过或者不同的数已经超过 mp+1m-p+1 个那就不合法,否则显然存在方案。时间复杂度 O(n+m)O(n+m)O(n+mlogm)O(n+m\log m)

H

考虑小凯的疑惑,设 gi=gcd(a1,,ai)g_i=\gcd(a_1,\dots,a_i),所有 kgn+i=2n[gi1ai]gi1aikg_n+\sum\limits_{i=2}^n[g_{i-1}\nmid a_i]g_{i-1}a_i 肯定能被表示出来,这个东西只有 O(V2)O(V^2)。如果 mm 只有 O(V2)O(V^2) 这个级别就暴力,否则数位 DP 算所有 gng_n 的倍数。O(V2+Vlogm)O(V^2+V\log m)

I

首先对于每个 iinn(i,1)(i,1) 尝试让 kk 增加,这样可以使序列变成一个排列。
对于 i[1,n1]i\in[1,n-1],我们尝试确定 a1ia_1-i 的位置。我们把 a2ana_2\sim a_n+i+i 之后 kk 显然是 n1n-1,然后序列中没有 a1+ia_1+i,对每个 jj 询问 (j,i)(j,i) 即可检查他的值是不是 a1ia_1-i。询问次数大约 3n23n^2

J

首先我们需要 k[2n1,n2]k\in[2n-1,n^2]。打表发现 kn22k\ne n^2-2
考虑递归构造,如果 k4n4k\le4n-4 就把 nn 放在最下面,否则放在最上面,这样在 nn 足够大的时候 k[2n1,n2]{n22}k\in[2n-1,n^2]\setminus\{n^2-2\}n10n\le 10 的时候暴力全排列。O(n)O(n)

K

我们需要 di,j+di+1,j+1di+1,jdi,j+1=0d_{i,j}+d_{i+1,j+1}-d_{i+1,j}-d_{i,j+1}=0。我们可以把这些等式随意加起来,这样就是“一个环,每个点都是直角,奇数位和等于偶数位和”的限制。对每个行列赋权使得 fi+di,j=gjf_i+d_{i,j}=g_j,要求 maxfimingj\max f_i\le\min g_j,连边 DFS 讨论一下即可。O(n+m+k)O(n+m+k)

L

往下走肯定是直着往下走,差分覆盖一下能躲太阳的 yyO(n+V)O(n+V)

评论

1 条评论,欢迎与作者交流。

正在加载评论...