J组游寄
上午七点三十几到的考场,坐标 BJUT
,遗憾地没怎么在门口看见同学。
开场先看了看 T1,蛮简单的桶,样例测了大差不差,开始看 T2。
一眼模拟题,模拟每一步走的过程,记录中间走的格数。样例都过了,祝我AC。
T3 火柴棒似曾相识但貌似没见过。感觉像个完全背包,但是写着写着发现转移方程写不出来,改写暴力。没啥技术写了个 DFS,最多 20pts 算是寄了。
T4 看了看,没看懂也没啥思路,直接输出 0 跑路。
预估得分:100+100+10+5=215 祝我一等,别写挂了
S组游寄
中午去附近的必胜客吃了一口(竟然在欢乐谷旁边),然后去了酒店。
躺着看了会 自然传奇 发现到点了,匆匆忙忙地赶去考场。
下楼途中遇到了 DeltaCR,他比我小一届还比我强。他告诉我 J组T3 是个结论题,能直接推出来,难绷……
买了块巧克力,进考场等着。
开场打开 T1,看着它最小生成树的既视感我想到了并查集。打着打着发现复杂度过高,容易超时,于是结了代码去看 T2。T2 第一问一点技术没有纯模拟,第二问以为是个线性 DP 鼓捣了半天没推出来方程我也是够菜的。猛然想到它本质是个区间覆盖问题,然后想到了洛谷的一道 贴海报。虽然但是,没想出来解法。
回去鼓捣 T1,发现我查找比 \(i\) 小的时候排了个序,于是毅然开始写二分,样例没过。后来发现是没改回顺序,不小心把循环写反了,改完就对了。测大样例 #3,又没过。看了看性质有手动模拟了一下,发现容易合并重复于是加上了标记。样例十分顺利。以下是我的做法,不知道对不对:
先从大到小给实力值 \(r_i\) 排序,然后从1号开始遍历,对于第 \(i\) 号元素找 离他最近的严格小于 \(r_i\) 的元素 \(j\)。同上文所述,用的二分。找到之后用并查集将二者合并,最后整理一遍有多少个并查集根,即 \(father_i = i\) 即为答案。
反正样例都过了,应该没问题。
搞完之后继续鼓捣 T2,顺便看了下 T3,发现一眼数位 DP 不过也可能不是。发现不会写T2之后就一直在写T3,因为我比较菜,只会写 DFS 不会数位 DP,只打了能拿 20pts 左右的写法。
时间只剩下40min,T2有些了些完全没戏,于是输出样例跑了。T4看都没看,一看到要求 \(\log\) 直接傻眼连偏分都没打。
预估得分:100(?)+0+20+0=120 一等没戏了,坐求普一提二。