赛前
刚哥说要以正式考试的心态打模拟赛
所以提前设了一个目标,230+和rk<=5
然后和大赛前一样,先调整状态,深呼吸什么的
赛时
开始时还剩3:45时间
T1上来分析了一下性质
在3:24时秒了
T2看见直径,然后直接想端点,然后枚举了几种情况
在2:37时开打,1:34时写完
然后看T3,想了半天,想到了根号分治,但是由于不会实现,就没有往下想
赛后看题是可以用 string 自带的函数进行实现
大概在一个小时的时候,开始看T4
然后本上比赛最大的败笔就在这
我大概一会就想到了52pts的做法
然后在实现的时候,我竟然开始发呆!!!
反映过来之后赶紧开打,最后剩15分钟的时候写完,然后挂了
着急,以为是方法出问题了
一想,这样不行,一点分都没有了,于是打了20pts
调完还剩3分钟,赶紧交了,由于着急建文件夹,赶紧先交一下到oj上
赛后一查没删文件读写!!!也没有初始化!!!
赛后调了一下52pts,发现是树状数组query写挂了
唐完了
赛后
100+100,rank3
T4 40pts就榜1了
和榜1最近的一次
T3其实想到了20pts的写法,但是因为我算的询问次数超了,就没有写,但其实是很好写的,并且,由于卡不满,也能跑过
交了总比不交好,想这种,交个乱搞的骗分也不错
T4赛后会了一部分
其实主要就是把上升的子序列和下降的贡献拆开
当上升子序列最后边的值大于下降的值时,发现直接后面接上升和下降子序列就行
之前的话,当前 \(a<p_i<b\) 则进行两边转移,发现a和b一定是相邻的
然后若 \(b<p_i\) 则有a到\(p_i\) 转移到上一种情况,和没有贡献的另一种情况
具体维护没想明白
主要就是拆贡献