首页 > 其他 > 详细

交互题 总结

时间:2020-01-15 20:45:18      阅读:83      评论:0      收藏:0      [点我收藏+]

写在前面:

于$2020$年$1$月$13$日开此博文

距离$NOIWC2020$仅剩$17$天

即时战略

在我的LCT专题总结里

最大差分

子任务一:

可以不断的缩小左右端点来确定未知的两个最值

子任务二:

显然这种情况下的最小答案为

$$S=\left \lfloor \frac{a[n]-a[1]}{n-1} \right \rfloor$$

所以当我们以$S$为块长分块时

一个块内的元素不会对答案造成贡献

所以只需要对每个块进行一次操作便可以在块之间更新答案了

最终询问数

$$Q=n+n-1+n-2$$

$S$用向下取整会$PC89pts$

向上取整就可以$A$了

小修和小栋猜♂数字

发现对于一个序列

我们最多能问出$n-4$个位置的值

剩下的四个便是最值和次值

通过$4$次询问可以把他们划分成$2$个集合

对于最值我们什么也知不道

对于次值可以知道值是多少但是无法确定它的位置

那么考虑维护$4$个位置分别是最值和次值的位置

同时维护次值的大小$L,R$

每次加入一个位置$i$时

从左右集合各取一个和$i$进行询问,设答案为x

$1>x\in[L+1,R-1]$

$a[i]$一定是$x$直接回答

$2>x=L$

那么从左集合选出的位置一定对应着次值,所以回答它并从左集合中把它删去

之后用左集合里另一个位置,$i$和右集合的一个位置进行询问

得到新的次小值

$3>x<L$

和上面的情况差不多不再赘述

交互题 总结

原文:https://www.cnblogs.com/AthosD/p/12188971.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!