2025.4.12 攀山小队月赛

link

恰同学少年,风华正茂。书生意气,挥斥方遒。

前言

水到了 rk3。其实这一场打得很失败,平时训练的时候可以很轻松地往最近学的知识想,可是在这场考试中就没有用了。而且做离线的题目太少,T2 转换一下赛后 3 分钟就切了 qwq。

强烈指责 @bnuhzy,说好的 tarjan 呢?复习了一个晚上和一个早上结果一个没有。

赛中

8:30 发了题,还是跟以前一样先选择看了一遍。
大概分析了一下题目:

  • T1 中的 \(n, q \le 300\) 一下我就会了;
  • T2 给我的感觉是树上倍增(维护一个树上最小值),然后求出子树中合法的值;
  • T3 以为就是一个差分(还没有仔细看);
  • T4 应该要建图(先看的输入)。

8:37 开始想 T1:显然这道题外层肯定要先套一层 \(q\) 的询问,然后黑色的点明显没有用,于是就可以直接建关于白点的 DAG,接着便想了一下用 拓扑/dfs 的写法,结果都写挂了。直接上暴力!然后就没管了(赛前听见了 lzy 问的栈空间,于是智慧地写了 bfs)。

9:00 开始想 T2,一直想到了 10:30:由于没有想到离线算法,于是就一直在苦想,最后想出来了一个很抽象的东西:

明显对于当前的 \(v\) 点,可以用树上倍增维护祖先和路径最小值,那么可以实现快速跳达到把问题转换成求一个 \(v\) 子树中合法的数量。

我对于输入的每一条边进行权值排序,让 1 作为 root,然后在询问的时候二分出可能的边。

接着按照 depth 的顺序进行封锁,判断 LCA,最后容斥一下。

洋洋洒洒写了 3600B 然后 WA 了,于是开始写暴力,4 分钟就拿下了 30 分。

10:40 的时候去写了 T3,发现容易重复,于是就写了暴力(结果忘记有 30% 数据的大样例了 qwq)。

11:00 开始写 T4,明显要建图,于是就写了,然后在图上反悔贪心,结果自测样例的时候直接 T 飞了,而且害怕 20 分的数据不过就删掉了(赛后发现好像把其中的某个 dfs 加上一个标记就跑得挺快了)。最后加上了 See you again。

11:55 交上了,就开始 chrome://dino 了。

分数

考场估分:100pts + 30pts + 30pts + 20pts = 180 pts

考后估分:40pts + 30pts + 0pts + 20pts = 90 pts

实际分数:100pts + 40pts + 50pts + 20pts = 210 pts

其实可以得 220pts 的,但是写了分数分块就少了 10pts。

总结

这一场其实没有发挥出实力,T1 过得不够优雅,T2 没想到离线(想到了就会了),T3 自己写的暴力其实已经在提示正解(可是那可是高贵的数论,我不能染指),T4 多想 1h 我应该也能自己写出来。

posted @ 2025-04-12 17:00  Merge_all  阅读(44)  评论(0)    收藏  举报
//雪花飘落效果