
线段树
ナナ色のブランク
这个作者很懒,什么都没留下…
展开
-
HDU 3954 level up (线段树)
题目链接题目大意: 有n个角色,k个等级,q个询问。一开始所有角色经验为0,等级为1.可以执行两种操作。输入W l r e吧[l,r]区间内的角色经验都加上 等级*e,输入Q l r查询[l,r]区间内最大的经验值。思路:看到题第一个想法就是维护区间内最大的等级和经验值,然后但会遇到这么一个问题,区间修改的时候肯定要打懒标记,但是如果在遍历线段树时要在一个已经打过标记的结点上再打标记,那么这时维护的信息是不正确的。因为你可能上次标记的时候这个区间的值已经变换,所获得的经验也会有变化,所以懒标记不可以直接原创 2020-07-28 21:18:34 · 131 阅读 · 0 评论 -
E2. Voting (Hard Version)(贪心+线段树维护区间最值)
题目链接题目大意:让n个人全投票给你,每个人有两个投票的限制条件,当前投票人数大于mi则第i个人投给你,否则就要花费pi让他投给你。思路:如果可以让一个人免费投给你肯定要让他投啊,如果不能免费就想办法让他免费,实在不行就花费p让他投。不过按照贪心的思想,我们要想尽可能节约成本,就需要尽量贿赂m大的人。大体思路就是这样。实现过程:因为我们不可能一开始让m大的人投给你,所以先按m从小到大排序。假设我们目前到了第i个人这里的时候前i-1个人已经投给我们了。那么我们就要算出第i个人还需要多少人才能投给我,结果原创 2020-07-15 15:53:11 · 191 阅读 · 0 评论