CSPS模拟 51

  蒟蒻由于仍然苟活在$1jf$,不得不接受省选题的吊打$QWQ$

  蒟蒻由于拿了大神们不屑打的弱智暴力,而大神们$T3$的各种快速变换没调出来,所以拿到辽人生第一个$1jf$黄名

  既侥幸又$kx$

  

  T1 Tree

    难道要用$lct?$

    观察模样发现其实并不需要换根

    利用$dfn$的性质就完事了

    他所要求的各种操作,都是可以通过任意一次$dfn$序各种特判等效地完成

    例如:找两个点的$LCA$

      在任意一个$dfn$序下

      如果$root$在$lca(u,v)$的子树外,那显然就是$lca(u,v)$

      否则找$u,v$,$u,root$,$v,root$的$lca$,三个点里选深度最大的

    再例如:找一个点的子树区间

      在任意一个$dfn$序下

      如果$root$在$lca(u,v)$的子树外,那就是$[dfn_l[lca(u,v)],dfn_r[lca(u,v)]]$

      否则把$root$倍增到$lca(u,v)$的儿子处,他在哪个儿子就把哪个儿子的$dfn$区间去掉,剩下的部分全是

    主要靠yy吧

  

  T2 function

    考试的时候发现他会跑到一个地方然后一路走到黑

    于是打了%%% $skyh$ %%%不屑一打的$27pc bf$

    结果多打的$14pc$让我高了%%% $skyh$ %%% $1pc 2333$

    其实没什么值得高兴的因为这$14pc$实在太无脑了

    感脚$cbx 73pc$的暴力才像个样QWQ

    考试的时候往深里想了想,发现对于每个位置都有一个阈值,超过这个阈值就向后走,否则停在这里

    但是没有想到用单调栈维护一个凸包来干这个阈值

    主要是没有想到把询问离线所以没有想到后边

    

    题解写它是个下凸包

    但是不妨理解成一个上凸包

    为什么呢,如果以询问的$x$值为横坐标,对应的答案为纵坐标,建个系,把(从当前位置出发)每个位置对应的直线画出来

    画出来的就是个上凸包,我感觉这样决策的取舍也比较好理解了

    (刚给两个同学讲了他们说我的思路并不好理解qwq)

    可能只是因为是自己yy出来的缘故所以感觉好理解吧

    如果新加进去的直线斜率比栈顶小,那栈顶就是废物(不可能停在栈顶位置)

    如果上一个条件没有满足,但是如果新直线与次栈顶的交点处,栈顶的答案不如新直线和次栈顶优,那么栈顶也废了(没有x使得询问结果为栈顶直线)

    然后这题就没了

    不过由于我特殊的建系方式,我栈的直线只是相对关系不发生变化,但是他们的表达式时刻在变...

    每次计算交点,点值等等...都得动态计算表达式

    然而其实比较好打..

 

  T3 Or

    神仙$FFT/NTT$,神仙生成函数,神仙泰勒展开

    我感觉离我能写这题题解还要一段时间..

 

转载于:https://www.cnblogs.com/yxsplayxs/p/11587660.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值