XVIII Open Cup named after E.V. Pankratiev. Ukrainian Grand Prix.
A. Accommodation Plan
upsolved by F0_0H
- 注意到 \(k\) 只排骨龙入住完毕后,满足到每只排骨龙距离小于等于 \(L\) 的点会形成一个连通块,我们可以按照连通块的根对方案进行分类。
- [1]对于确定的根 \(u\),所有的排骨龙距根都要小于等于 \(L\),[2]必须存在一只排骨龙距 \(u\) 小于等于 \(L\)
- [1]可以重心分解,[2]是一个二维平面矩形内数点问题。
B. Card Game
solved by F0_0H 12 -2
签到
C. The Most Expensive Gift
solved by rdc 117
- 注意到出现次数最多的字符 \(\geq n/3\),答案下界为 \(n^2/9\),所以周期长度小于等于 8。
- 枚举一个周期内有什么东西,哗啦啦跑序列自动机。
D. Cut the Cake
solved by F0_0H 28
行列分别考虑,每次顺次严格取\(k\)个即可
E. Message
F. Bad Word
solved by sdcgvhgj 58
- 非回文,ans = 1
- 回文,ans = 2 或者 -1,如果能拆成一个非回文的前缀和非回文后缀输出 2,否则为 -1
G. Zenyk, Marichka and Interesting Game
solved by rdc 287 -1
- 先对每堆石头 mod (a + b)【虽然不知道为什么】
- a = b,特判。
- a < b,如果存在一堆石头个数 \(x\),满足 \(a \leq x < b\),那 \(a\) 无敌了,如果第一步能凑出这样的 \(x\) 也无敌了。
- a > b,枚举第一步操作,归结到 case 2 上。
H. Frog Jumping
solved by F0_0H 88
- 如果存在两个石板间的距离大于\(D\),则让费用最小的青蛙把石板全踩光即可
- 否则二分最多可以让多少只青蛙不花费代价跳过去,如果\(k\)只青蛙不花费代价跳过去,则相邻\(k\)的石板间距离不超过\(D\)
I. Slot Machine
upsolved by sdcgvhgj & F0_0H
J. Half is Good
solved by F0_0H 213 -1
瞎试了一发,无法证明。
记录每个点连接的边中边权最小的边(忽略自环)
依次遍历每个点,如果当前点未被选中的边关联,则选取当前点对应的边
这样至少选区\(\lceil \frac{n}{2} \rceil\)条边
K. Dance
L. Impress Her
solved by F0_0H 67
暴力即可
可以证明平摊复杂度为\(O(n^3)\)
summary and replay
复盘 by rdc
F0_0H 签到 -2 后,直接接管比赛,一波 combo 就带走了几道 medium - easy 题。
在 F0_0H 大杀四方期间,RDC 猜了一下 D 有解答案小于等于 2,然而无解没想清楚,白给了一发,sdcgchgj 施展马拉车 fix 了无解的情况,A 掉了这题。
在 F0_0H 秒掉 H 后,无题可写,过了大约 10 分钟,RDC 发现了 C 是个小排骨龙,开始锤 C。
接着又无题可写,F0_0H 发现蔡队他们 J 过得血快高呼 cslnb,RDC 上去莽了一发 J,往 H 题上试探了一发 MLE 掉了。陷入僵局,于是试图玩一玩 gen 来寻找突破口,“边可以存种子?”,“连通块个数很多?所以每个连通块需要排序的边很少”,在这样一个关键的时刻,RDC 先是认为 F0_0H 可以 AC 的做法是假的,然后自己又开始莽,又 MLE 掉了,最后 RDC 逃跑了。
F0_0H 接着 J 题,两发入魂,然后接着推 I,rdc 和 sdcgvhgj 在玩 G。
进入封榜后,J 题 WA 掉了,F0_0H 下去改,rdc 上去写 G,把 F0_0H 说的模 a + b 和凑 \([min(a,b), max(a,b))\) 堆的想法结合一下,然后 WA 掉了,F0_0H 改了一下 J 还是 WA,RDC 改了改 G 居然过了。
卜:medium 节奏断掉这个问题....这是个很严肃的问题。