专栏文章

题解:AT_agc057_d [AGC057D] Sum Avoidance

AT_agc057_d题解参与者 1已保存评论 0

文章操作

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

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

题解

首先我们要找到合法数列的上界,其次考虑如何做使得字典序最小。考虑若干形如 (i,Si)(i,S-i) 的数对,显然这里面最多只能选择一个,如果两个都选那么就能凑出 SS 了,所以答案的上界为 S12\left\lfloor S-1\over2\right\rfloor。现在我们考虑简化问题,我们其实可以通过确定一个合法的集合 BB 满足 xA,xS12\forall x\in A,x\le\left\lfloor S-1\over2\right\rfloor,据此确定 AA。考虑对于之前的数对 (x,y),x<y(x,y),x<y,若 xBx\notin B,那么有 yAy\in A,否则有 xBAx\in B\subseteq A。现在我们尝试去寻找字典序最小的 BB,显然若 BB 满足字典序最小则有 AA 同样满足字典序最小。
在开始前我们先来证明一个引理。
引理:若 a,bB,a+bS12a,b\in B,a+b\le\left\lfloor S-1\over2\right\rfloor,则 a+bBa+b\in B
证明考虑反证法。如果 a+bBa+b\notin B,那那么有 SabAS-a-b\in A,于是 AA 中的元素就能够凑出 SS 了。矛盾。
首先我们要明确一点,就是我们从小到大去考虑 iS12i\le\left\lfloor S-1\over2\right\rfloor,如果 ii 能被选择那么我一定会去选它。这里会有一个问题,就是说为啥这样构造出来的 BB 对应的 AA 一定合法呢?考虑反证法,首先 BB 一定合法,若 AA 不合法,那么一定存在一个 x>S12x>\left\lfloor S-1\over2\right\rfloor 能与若干 yBy\in B 凑出 SS。因为对于形如 (i,Si)(i,S-i) 的数对只能选择一个数,所以 SxBS-x\notin B。但是因为有若干 yBy\in B 能够凑出 SxS-x,根据引理有 SxBS-x\in B,所以矛盾。这样就说明了做法的正确性。
接下来我们考虑会加入什么数以及加入的数有什么性质。假设现在 xx 能加入 BB,那么对于 y=kx,yS12\forall y=kx,y\le\left\lfloor S-1\over2\right\rfloor 一定也能加入 BB。如果原来集合里有 xx,我们加入 yy,那么对于 v=k1x+k2y,vS12\forall v=k1x+k2y,v\le\left\lfloor S-1\over2\right\rfloor 一定也能加入 BB。这显然可以考虑同余最短路。
考虑最短路之前我们需要找到最小的 xBx\in B,考虑找到最小的 x∤Sx\not\mid S。因为 lcm(1,2,,x1)S\text{lcm}(1,2,\dots,x-1)\mid S,所以能算出 x43x\le43,设为 pp。然后就正常同余最短路做即可。
具体的,我们设 fif_i 表示 BB 中元素能组合出最小的 xmodp=ix\bmod p=i 的数,加入一个 xx 就有 fif(ikx)modS+kxf_{i}\leftarrow f_{(i-kx)\bmod S}+kx,你写成转两圈的形式会好写一些。一个元素加入后合法当且仅当 fSmodp>Sf_{S\bmod p}>S,结合 dp 转移式有 i,x>Sf(Six)modpi\forall i,x>\left\lfloor S-f_{(S-ix)\bmod p}\over i\right\rfloor。到此这个题差不多就做完了,求答案考虑二分,若要求 BBk\le k 的元素个数,则有 i=0p1kfip+[i>0]\sum\limits_{i=0}^{p-1}\left\lfloor k-f_i\over p\right\rfloor+[i>0]。时间复杂度 O(p3+plogn)\mathcal O(p^3+p\log n)

评论

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

正在加载评论...