20210811数据结构

还是开始写的很晚……因为调题速度比较慢……

赛时

约20分钟看全四道题目。

感觉还好,感觉\(T1\)可以马上切掉,用了一个\(\text{deque}\),大概\(10\min\)就切掉了。

\(T2、3\)没有太好的思路,转而去准备\(T4\).

\(T4\)还是很快就想到\(O(n^3\log n)\)\(50pts\)做法,约\(20\min\)内实在没有想到更好的优化,便写上了。

Parking Lot

正解:把问题离线,逆向考虑.

每次去掉一个点后,若最大正方形扩大,则扩大的正方形一定经过此点.

\(f(i,j)\)\(g(i,j)\)分别表示\((i,j)\)向上/向下分别可以达到多远.

对于点\((X,Y)\),考虑区间\([l,r]\),则纵向最大可选取长度为\(\min\{f(X,i)\}+\min\{g(X,j)\}(i,j\in[l,r])\).

维护时使用线段树\(O(n\log n)\)或单调队列\(O(n)\).

这时候 已经稳拿了\(150pts\),准备去冲\(T2\),\(T3\).

惊喜的是\(T3\)想到了正解:将问题离线处理后转化为路径边权最值问题。但因为询问的记录出现细节错误导致\(100\to30\)!.

\(T2\)没有太好的思路,写了20分的暴力。

赛后

除了\(T3\),估分很准确!

\(T3\)再次败在了细节问题上!!!!导致正解变成30分!

细节!

posted @ 2021-08-12 00:18  Last-Order  阅读(15)  评论(0编辑  收藏  举报