T1倍增。
T2没写对顶堆,也没写桶排。一本正经的写了BST。
后来想到BST如果输入单增,那么就是一条链,很悬!于是重构代码,写了Treap。
关于桶排,按理说是线性复杂度,但是:
- 假设有一个变量m(0≤m≤600)代表分数的范围
- 然后此题的复杂度变为二次,但是实际上常数反而更小
T3以为又是xx自动机这种神仙玩意,于是先做T4了。做完回来做T3,发现还好,于是维护一个栈,另加一堆特判、手动模拟了一堆表达式,出现就直接套上、优化了一堆非运算的东西,并且顺便开数组记录了询问过的地方修改了之后的值,下次询问直接调用。然后复杂度二次,但是常数较小?不确定
T4写了2份,一份点转边权SPFA最长路。
发现nm个点,nm左右条边,还是网格图,复杂度急剧退化。然后这份就注释掉了。
第二份没时间了,写了记搜,然后过了样例,但是自己的数据没过。
总分
100+100+(30+rp)+rp
ZJ我无了