
优先队列
文章平均质量分 72
lyc1635566ty
这个作者很懒,什么都没留下…
展开
-
hdu-5596 优先队列
题目大致意思是:有1到n个人,每个人属于A组或B组,每个人都有一个能力值。时间到i秒时第i个人就可以消灭所有前面能力小于他的别组的人。另外,每过c[i]秒,1到c[i]的人就会增加一点能力。问最后剩余人的个数。大致思路:因为每次1到c[i]的人能力值+1可以换成c[i]+1到n的人的能力值-1;所以可以通过前缀和求出每个人所减的能力。最后维护两个优先队列求出剩下的人。#include#i原创 2015-12-12 20:44:06 · 341 阅读 · 0 评论 -
HDU5695-Gym Class-拓扑排序优先队列结合
题意:n个人每人都有1-n的唯一编号,按一定顺序排好后,每个人都产生一个价值,这个价值等于从前往后到自己这个位置最小的的值,包括自己。但是有些不希望一些人排在他前面。思路:典型的拓扑排序。将那些不希望的关系当成一条边,然后不断在入度为0的点中取一个最大的然后删除这个点和这个点的边,然后继续,用一个优先队列维护一下就好了。#includeusing namespace std;#defi原创 2016-05-24 20:41:41 · 420 阅读 · 0 评论