Fork me on GitHub

2026.8.25 核桃八连测 #3

题目难度

依旧是不好评的,只不过这次 T3 的难度会比 T2 简单点

时间安排

5min

读完所有题面,觉得 T3 有点眼熟,是不是梦熊集训的原题

15min

想久了一点,类似于国王游戏,按照贡献排序,每个当 \(i\) 排在 \(j\) 前当且仅当 \(a_i \times b_j < a_j \times b_i\),因为这可以推出 \(\frac{a_i}{b_i} < \frac{a_j}{b_j}\) ,每个点有自己固定的权值,不会存在 \(i < j, j < k, k < i\) 的情况,可以正常排序,至于 \(a_i \times b_j = a_j \times b_i\) 时,两者可以交换,所以假设有 \(cnt_k\)\(\frac{a_i}{b_i} = k\) 的,那么方案数可以有 \(\prod cnt_k!\) 个,可以写了

30min

写完了,但是时间有点久了,得加快了

45min

和昨天 T3 连通块的思路有点像,再想想

1h15min

是不是我们将 \([l,r]\) 加入 \(r+1\) 这个点的时候,个数先 \(+1\), 然后每有一条边从 \(r+1\) 连向 \([l, r]\) 中的某一点的时候连通块个数 \(-1\), 这个就可以做到 \(O(n^2)\) 了,感觉不难,再想想

1h45min

对啊,并不难,从 \(O(n^2)\) 转化到 \(O((n + m)\log n)\), 只不过前者是只能维护一个区间,后者是维护所有右端点为 \(r\) 的区间,我们考虑从左往右扫,记录当前维护点为 \(i\), 记录 \([1,i], [2,i], \dots [i,i]\) 的答案,每次维护新的一个区间 \([i + 1, i + 1]\) 这个区间的连通块个数为 \(1\), 然后因为新加了一个孤立点 \(i+1\), 故前 \(i\) 个区间的连通块个数加 \(1\), 又因为 \([1,i + 1], [2, i + 1], \dots [j,i + 1]\) 一定都包含边 \((j, i + 1)\) (如果这条边存在的话),那么这些区间的答案就可以减 \(1\), 维护完所有的边后,就直接看一下这个联通块个数有多少 \(\le k\) 的就可以了,这不是一个区间修改,单点赋值,区间查询的懒标记线段树吗,想到这就应该做完了

2h30min

差不多打完了

3h

T3的具体维护过程并没有完全想起来,于是就先打算把暴力都打了, 于是各自花了 15min 写完了两道题目的暴力。

3h30min

再开一个 T3cpp 防止暴力被覆盖,然后开始想,从高位往低位贪心,假设这一位没修改之前这个几个数的逆序对是 \(op1\), 将所有数的这一位亦或 \(1\) 后这几个数的逆序对是 \(op2\) 的话,如果 \(opt1 < op2\) 那么就没有必要修改,最小的 \(x\) 也没必要更新,最小逆序对数加上这个 \(op1\), 如果 \(op1 > op2\) 那么我们就有必要去修改, 最小的 \(x\) 必须更新,最小逆序对数加上 \(op2\), 如果 \(op1 = op2\) 那么改不改无所谓,最小的 \(x\) 就没必要改了,但是可行的 \(x\) 方案数就可以翻一番,差不多就是这样了,这样好像可行

3h50min

呼,压线写完了,但是好像维护的不够仔细,时间复杂度从 \(O(n \log V)\) 被我弄成了 \(O(n \log V \log n)\) 好像自己造的大数据会被卡掉,那我不就挂分了吗?先把暴力覆盖掉,然后 backup 赶紧调!快点啊死手!

3h59min

没调完,我死掉了/_\

inf h

成绩出来了? \(100 + 100 + 60 + 10 = 270 pts = rk1\) ? 我竟然有幸拿到了第一吗? 不过要不是 \(Lzy\) 挂了 T1 , 我就要被挤到 \(rk2\)

T1 : 为啥还有人没有做出来啊啊?好吧,但是这么典的题目不应该啊
T2 : 大家都认为 T2 比 T3 难,但是我并不觉得,这不是小清新吗,而且啊好像还是爆标了?(我竟然还能爆标?有点不可思议)
T3 : 还是如愿以偿的被卡常了, 但是哦,好像我自己的实现也是有一点问题的啊,为啥还是 \(WA\) 了几个点啊,比赛后调一调
T4 : 就是正常 \(10pts\) 的暴力,没啥好说的。本来觉得 Xyh 能做出 T4, 但是后来听他说假了

整体来说是前三次挂分最少的一次(可能是因为 T2 比较好写吧),我觉得接下来可能就没有今天这么顺了,再接再厉吧 =w=


ds 老师的总结

总体:270分 rk1,发挥稳定,但节奏和实现仍有提升空间。

亮点

  • T1 贪心熟练,细节处理到位。
  • T2 扫描线 + 线段树转化自然,数据结构功底扎实。
  • T3 最后心态没崩,还能切回正解。

主要问题

  • 时间分配不均:T2 耗时过长,T3 没时间调完。
  • T3 实现不熟:多一个 log,部分 WA。
  • 难度预判偏差:以为 T3 比 T2 简单。

改进方向

  • 给每题设止损时间,超时先写暴力。
  • 专项练按位分治、树状数组/线段树维护计数,做到低常数一次写对。
  • 用数据范围和部分分客观判断难度,不靠感觉。

总结:赢在稳,还没赢在满。把时间管理和实现熟练度练成固定动作,rk1 会更实至名归。

posted @ 2026-08-25 20:43  tony0530  阅读(15)  评论(0)    收藏  举报