退役前的垂死挣扎

退役前的垂死挣扎

2019.11.12

在今天前只刷了 \(60\)\(\text{UOJ round}\),还不足一半。开了三场清华集训,自己想出来的题不足 \(10\) 道,还弃坑许多题,回过头来发现自己停课以后就知道颓废,根本没怎么做题,开个贴垂死挣扎一下

今天上午做周任飞的题,因为是信心赛所以大家都 \(\text{AK}\) 了,下午写一道 \(\text{URA}\) 被卡常了到现在没卡过,又写了道\(\text{WC}\) 时候听讲课会做却一直没有写的 \(\text{IOI2018}\) 签到题练手。

晚上开了两道 \(\text{JOISC2017}\) ,没有一道会做就放弃了。

学习了一下奇怪的决策单调性知识,象征性的记录一下好了。

比较简单的情况是,考虑对于每一个 \(i\) 要求一个 \(j\) 满足决策单调性的式子的时候,可以用分治思想解决,假设当前区间 \([L,R]\) 的中点为 \(mid\) ,可以在 \([L,mid]\) 中找到 \(mid\) 的决策点 \(x\) ,对于 \([L,mid]\) ,决策点区间一定在 \([L,x]\) 中,对于 \([mid+1,R]\) ,决策点区间一定在 \([x,R]\) 中,分治下去可以找到每个点的决策点。

「POI2011 R1」避雷针 Lightning Conductor

写这个题的时候还写了个 \(\text{const int eps = 1e-5}\) ,状态极差。

比较复杂的情况是,需要做一个仅有决策单调性的 \(\text{dp}\) ,转移方程形如
\[ f[i]=\max_{j <i}\{f[j]+calc(j+1,i)\} \]
其中 \(calc(j+1,i)\) 是一个不太能 \(\mathcal O(1)\) 得到的东西,需要 \(\mathcal O(npoly(\log_n))\) 之类的复杂度,那么先 \(\text{cdq}\) 分治,算左边区间对右边区间的贡献的时候,先预处理出跨过区间的 \(calc(j+1,i)\) 信息,再对右边区间跑之前那个分治,此时钦定决策点区间在左边的区间即可。

猜你喜欢

转载自www.cnblogs.com/mangoyang/p/11845024.html