IDTagDiffDescriptionSolutionCodeReview
CMedium空序列 cc,任意操作:花费 XX,将 AA 的所有元素按顺序追加到 cc 的末尾;花费 YY,将 cc 中某一个元素加 11 或减 11;花费 ZZ,从 cc 中删除一个元素。最小化将 cc 变为 BB 的总花费。(1) f(i,n)f(i,n):已经生成 BB 的前 ii 个元素,BiB_i 使用 AkA_k 生成。f(i,0)f(i,0):已经追加了一份新的 AA,但还没有处理其中任何位置。O(MN2)O(MN^2)。
(2) 定义 g(i,k)=f(i,k)−kZg(i,k)=f(i,k)-k Z 优化转移,O(MN)O(MN)。
AC公式的优化 DP。
DHard求 1∼N1 \sim N 的排列 PP,满足 Ai=1/0/?A_i=1/0/? 表示 P[1,i]P[1,i] 是连续集 / 不是连续集 / 随便;Bi=1/0/?B_i=1/0/? 表示 P[i,N]P[i,N] 是连续集 / 不是连续集 / 随便。(1) 令 A1=BN=AN=B1=1A_1=B_N=A_N=B_1=1。若 2≤j≤i≤N−12\le j\le i\le N-1,且 Bj=Ai=1B_j=A_i=1,那么 Aj−1=Bi+1=1A_{j-1}=B_{i+1}=1。如果冲突则无解。
(2) 构造。若 Ai=Bi+1=1A_i=B_{i+1}=1,从 ii 处切成两块,左右两侧值域不交。按顺序给各块分配数字,每块内部先降序排列,再微调:第一块只需额外满足 AA;最后一块只需额外满足 BB,其它块内部无 1,自然已经满足。
(3) 特判没有分界(如 1?001, 1?111),设 l=max⁡{i<N:Ai=1}l=\max\{i<N:A_i=1\},r=min⁡{i>1:Bi=1}r=\min\{i>1:B_i=1\},一定有 r−l≥2r-l\ge2,否则切成了两块。(a) 若 r=l+2r=l+2,中间唯一的位置 c=l+1c=l+1 必须满足 Ac=1A_c=1 或 Bc=1B_c=1,否则两者都是 00 时前后两个连续集只剩一个数没放,至少一边会连续,无解(如 11001, 10011)。把可用的 ?? 补成 11,按 (2)。(b) 若 r−l>2r-l>2,在 l+1l+1 放 11,在 r−1r-1 放 NN,其余的三块按 (2)。O(N)O(N)。
AC没有分界的情形要考虑清楚。
GMaster长度为 2N2^N 的序列 AA。任意操作:选择 mm 和 kk,对 0≤i≤m0 \le i \le m,将 A[i⊕k]A[i \oplus k] 减少 11。最小化操作次数,使变为全 0 数组。AC非常困难。
HMedium初始 M=0,P=0M=0, P=0。回合开始时,可花费 XX 将 MM 增加 11,或花费 YY 将 PP 增加 11。第 AiA_i 回合须 M+P≥BiM+P \ge B_i。每个回合结束时,PP 变为 max⁡(P−1,0)\max(P-1, 0)。最小化总花费。先算仅使用 PP 的方案,再枚举 MM。把 MM 增加到 M+1M+1 时,若之前某次操作把 PP 补到 BB,且 P≤M<BP\le M<B,那么现在就能少买 11 单位 PP。设这种操作共有 cc 次,那么节省 cYcY,净成本是 X−cYX-cY,O(Qlog⁡V)\mathcal{O}(Q \log V)。AC图形化更容易发现性质。
JHard长度为 2N2N 的整数序列 AA,每个整数恰好出现两次。构造长度为 2N2N 的 RBS SS,使分别连接匹配的左右括号,连接 AA 中的每个值的两次出现后,得到包含 2N2N 条边的环。先随便构造一个 RBS,得到的图是若干互不相交的环。考虑把两个环合并的方法,即从两个不同的环中各删去一条边,再交叉连接这四个端点。在 RBS 中,将相邻的 )( 改为 ()。用并查集判断是否属于同一个环,O(N)\mathcal{O}(N)。AC很困难,不好想。
NN 点 MM 边无向简单图 GG。称一个 1∼N1 \sim N 的排列 PP 为图 GG 的合法标号,当且仅当对边 (u,v)(u, v),均满足 Pu+Pv≤N+1P_u + P_v \le N + 1。first 依据图 GG 和合法标号 PP,输出非空二进制串 SS。second 依据 GG 和 SS,输出任意合法标号 P′P'。
隐藏 NN 节简单连通边仙人掌(每条边至多属于一个简单环)。询问两个节点 x,yx, y 和集合 SS,交互器返回在删除 SS 中所有点及其关联边后 x,yx, y 是否连通。询问代价 ∣S∣−1\lvert S \rvert -1。总询问次数 ≤3N2\le 3N^2,总代价 ≤N⌈log⁡2N⌉+2N\le N\lceil \log_2 N\rceil + 2N。回答图结构。
MEasy模拟。模拟。AC