首页 > 技术文章 > NOI OL2022游寄

houzhiyuan 2022-03-26 13:00 原文

上回说到:NOIP2021游记

考前随便写了一些没啥用的板子,感觉还行。

8:30 开始。

看题,发现 T1 好像比较困难,不大会,先看后面的。

T2 如果 NO,那么就是一棵树,很快会了 \(50\) 暴力,感觉后面的不大会。

T3 感觉比较有趣,\(m\le 4\),状压?

回头来看 T1,还是不大会,结果发现旁边人都开始写了,感觉比较紧张

随手推了几下,好像就是单调栈做一遍后,记录每个点入栈时前面的编号,如果前面的 \(<l\) 答案就加上。

感觉挺对的,写了一下,9:22 过了大样例,感觉 T1 花了太久时间,结果发现最大样例跑了 \(1.2s\),卡了一下常数。

看 T2 发现可以去重,这样树高度为 \(\sqrt{m}\),但发现还是不会判断两个人是否相互包含。

看 T3,考虑每个数的贡献,相当于对于一个 \(x_i\),找有多少个 \(x_j\),满足 \(x_i+x_j\ge y_i+y_j\)

移项,得到 \(x_i-y_i\ge y_j-x_j\)

可以发现这样只需要判断后面对前面的贡献就好了。

一眼 cdq,直接暴力跑,不得不多细节真多。

10:30 终于过了样例,但跑了 \(2.1s\),发现时限 \(3s\),感觉挺稳。

然后看 T2,想了一会儿,发现长度从小到大放,并查集维护一下就做完了。

然后写,11:10 过了大样例,就不管了。

然后水了一会儿,11:50检查一下,发现 T3 大样例 \(n=10^5\)???感觉要卡常。

随便卡了一下,还是比较慢。

自闭了,开摆。

预计得分 \(100+100+100=300\)

民间数据测了一下 \(100+100+90=290\),被卡了\kk。

code

推荐阅读