摘要:
题目链接:http://poj.org/problem?id=1611题意:在某个学校里,有n个人,有m个社团,每个社团有k个人,学生的编号从0到n-1。首先是0号同学得了一种病,然后呢与他接触的同学就会被列为怀疑对象,间接与他接触的同学也被列为怀疑的对象(也就是a患病,a与b有过接触,b与c有过接触,那么b、c都是怀疑对象),问一共有多少人患病与被列为怀疑对象。思路:将这些社团的人分成几堆,如果任意两个社团中有同一个人,那么这两个社团的人就是一堆的,最后统计与0在同一堆的人又多少,那就是所要求的答案;用并查集将这些人分类,然后统计就行了。代码: View Code 阅读全文
posted @ 2013-09-02 19:33
oucacm
阅读(119)
评论(0)
推荐(0)
摘要:
【题意】有一个烤肉机,每次可以同时烤M份肉。有N个顾客,第i个顾客li时刻到达,ri时刻走, 点了ai份肉,每份肉需要bi的时间烤,客人的每份肉可以分开烤,比如一份肉需要t时间烤,如果平均分出t份,那么能在1个时间内烤完。问能否满足所有顾客的需求。【分析】烤肉机相当于每个单位时间段都在工作,可以一直往里面加肉,每个单位时间段最多可以容下M份肉。对于每个客人,其需求需要在(li,ri)的区间内 完成,因为烤肉可以分开烤,则只需考虑单位份烤肉所需时间然后累加,即只用考虑ai*bi 2 #include 3 #include 4 #include 5 6 using namespace... 阅读全文
posted @ 2013-09-02 17:22
oucacm
阅读(114)
评论(0)
推荐(0)
摘要:
Amber的论文《最小割模型在信息学竞赛中的应用》【最大权闭合图】定义一个有向图G=(V,E)的闭合图,是该有向图的一个点集,且该点集所有出边都还指向该点集。即闭合图内的任意点的任意后继也一定在闭合图中。【建图】源点向正权点加边,容量为权值;负权点向汇点加边,容量为权的绝对值;有限制关系的点加边,容量为INF。【定理】最大权闭合图 = 正权值和 - 最小割 1 #include 2 #include 3 #include 4 #include 5 6 using namespace std; 7 8 #define INF 1e8 9 #define MAX_VECT 5... 阅读全文
posted @ 2013-09-02 14:37
oucacm
阅读(111)
评论(0)
推荐(0)