NOIP模拟 38

  liu_runda的题!

  错过辽QAQ

 

  T1虽然没用题解的损益法,但是用高精%还能过..

  没想到敲完就过编译了,还以为要调一天呢

  高精度的阴影没了~

 

  T2的思路很巧妙

  首先一个区间最多有一种颜色占一半以上,所以分别计算3种颜色的贡献

  处理个+=1的前缀和,又转化成求逆序对

  log过不去,发现右指针每右移一位,所查询的权值的变化量一定是1

  那可以在左边也放个指针,抖一抖维护出贡献就行了

 

  T3 二分套二分

  之前就被一道wqs的二分题虐死了

  到今发现以前根本没搞懂,重学wqs

  核心就是根据题目性质,发现代价(斜率)随x单调(不严格)变化

  所以可以根据x的需求变动代价(斜率)

  同时还可以求出对应的f(x),二分到需要的x就完事了

  

  稍难的在二分不到x怎么办(因为斜率不严格单调或精度不足以发现区别)

  那么此时x那段是平的,也就是选不选贡献一样

  那么可以强制都一样时一定要选(或不选),就使得 在切这一段斜率不变的函数时,你的答案总集中在边缘的某点。

  假设让它集中在较小的x,就在每次$x<=lim$时更新$ans$,这样仍保证ans加回$lim*cost$仍是对的

  让他集中在较大的x也一样。

 

  二分套二分看起来玄学,其实把情况都考虑好了还是可以安安稳稳地一遍过编译&&样例&&100%的测试数据的~

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值