题意:一个网络的安全系数是最少删除几个点后使得剩下的图不连通,给出一个无向图,求出该网络的安全系数。 思路:看了最小割模型论文,最小割点集就是把点分成两部分,一部分跟源点相连,一部分与汇点相连,这题就是求出最小割集,但是…
标签:acm
poj 2516 (费用流)
题意:有N个供应商,M个店主,K种物品。每个供应商对每种物品的的供应量已知,每个店主对每种物品的需求量的已知,从不同的供应商运送不同的货物到不同的店主手上需要不同的花费,又已知从供应商m送第k种货物的单位数量到店主n手上…
poj 2942 (点双联通+判断二分图)
题意:亚瑟王要在圆桌上召开骑士会议,为了不引发骑士之间的冲突,并且能够让会议的议题有令人满意的结果,每次开会前都必须对出席会议的骑士有 如下要求:1:相互憎恨的两个骑士不能坐在直接相邻的2个位置;2:出席会…
hud 4718 The LCIS on the Tree(树链剖分+线段树区间合并)
题意:给出一棵树,有Q个询问,x到y之间的路径所有边组成的序列,求该序列的LCIS。 思路:hdu 3308的加强版。先进行树链剖分,树链剖分后建线段树,树链剖分后一条链上的点在线段树中编号是连续的,所以只能在线段树上查…
hdu 3966 (树链剖分+线段树)
题意:给出一棵树,每个节点有一些敌人,有三种操作,I:x,y,路径上的所有点的人数+w。D:x,y,路径上的所有点的人数-w。Q:节点x的人数。 思路:如果是线性的线段树可以做,所以要树链剖分,剖分后的每条链是线性的,更…
hdu 4791 长沙现场赛A题
题意:打印纸张,随着张数的增加,价格非递增,给出m个询问打印的张数,求最小的花费。 思路:找到张数所在的区间,最大的花费就是该区间的价格*张数,如果要打印多余的张数,就在后面的区间找,因为后边的区间都是张数大于目标张数,…
poj 3352 (双联通缩点)
题意:给出一个无向联通图,求最少添加几条边让图是双联通图。 思路:先Tarjan缩点,(求出度数为1的双联通分量的个数+1)/2; #include<stdio.h> #include<string.h…
hdu 4714 (树形dp)
题意:给一棵树,删除一条边和增加一条边代价都是1,问把所有节点连成环,最少的代价。 思路:可以将树删成ans+1条链,答案就是ans+ans+1。如果一个节点的分支数大于1的话,就把该点与父节点的边删点,该节点形成的链数…
poj 3216 (最小路径覆蓋)
题意:有n个地方,m个任务,每个任务给出地点,开始的时间和完成需要的时间,问最少派多少工人去可以完成所有的任务。给出任意两点直接到达需要的时间,-1代表不能到达。 思路:很明显的最小路径覆蓋问题,刚开始脑子抽了,没求最短…
hdu 4712 (随机算法)
第一次听说随机算法,在给的n组数据间随机取两个组比较,当随机次数达到一定量时,答案就出来了。 #include<stdio.h> #include<stdlib.h> #include<st…
hdu 4801 长沙现场赛K题
题意:给出一个魔方的状态,求出在n次转动内最多可以成功多少个面。 思路:现场赛时,wx翻译完题目我们就知道是深搜,wx说只需要转三个面。复杂度就是(2*3)^7.当时我想着可以优化一下,一个面沿一个方向转一次后,就不要沿…
poj 3155 (最大密度子图)
题意:一个公司有n个人,给出了一些有冲突的人的对数(u,v),公司决定裁人,那么总裁现在要裁掉冲突率最高的那些人(冲突率=在这些人中存在的冲突数/人数)。就是求出一些点,这些点之间的边数/点数最大。最大密度子图。 思路:…