牛客8月小白月赛 G

每条鱼出现时刻为 [li,ri),体重 yi。初始的鱼体重为 x,吃掉一条鱼必须满足 xy,同时吃掉后 x=x+y。选择一个时刻吃鱼,求最大体重。yi109

调和级数+线段树二分。

扫描线,权值线段树维护当前时刻鱼的集合。设当前体重为 x,二分体重不变的情况下最多能吃掉多少鱼,更新体重,尝试吃掉下一条鱼。由于这个过程中体重至少 ×2,时间复杂度 O(nlog2n)

posted @   BYR_KKK  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示