ACM_图论
文章平均质量分 78
Cambridge
不做下一个谁,先做第一个我
展开
-
最小生成树
POJ-1287-Networkinghttp://poj.org/problem?id=1287赤裸裸的最小生成树最小生成树也称最小代价树,即各边的代价之和最小最小生成树可用Prim算法,也可用Kruskal算法Prim算法是基于顶点来实现最小生成树,Kruskal算法是基于边来实现最小生成树Prim算法:#include#include#incl原创 2012-06-21 17:21:29 · 1675 阅读 · 0 评论 -
POJ-1486-Sorting Slides
POJ-1486-Sorting Slideshttp://poj.org/problem?id=1486给出一些矩形的坐标和一些点的坐标,若点在矩形内,则该点和该矩形匹配,问是否存在某个匹配在所有的完美匹配中,这题可以先任意找出一个完美匹配,然后依次删除该匹配的每一条边,若仍能构成完美匹配,则这个匹配不唯一,若不能构成完美匹配,则该匹配唯一#include#include#inc原创 2012-08-20 17:55:52 · 2214 阅读 · 0 评论 -
POJ-3686-TheWindy's
POJ-3686-TheWindy'shttp://poj.org/problem?id=3686最大权值匹配,建图不好想,假设某个机器处理了k个玩具,时间分别为a1,a2…..,ak那么该机器耗费的时间为a1+a1+a2+a1+a2+a3.......a1+a2+...ak 即a1*k + a2 * (k - 1) + a3 * (k - 2).... + akak玩具在原创 2012-08-20 11:02:08 · 1337 阅读 · 0 评论 -
POJ-2516-Minimum Cost
POJ-2516-Minimum Costhttp://poj.org/problem?id=2516N个顾客,M个供应商,K种货物,给出一些供求关系,求满求条件的最小代价最小费用最大流,对k种货物的每一种求一次最小费用,相加即可#include#include#include#define maxn 300#define INF 0x7fffffffint min(in原创 2012-08-20 16:05:47 · 777 阅读 · 0 评论 -
POJ-2226-Muddy Fields
POJ-2226-Muddy Fieldshttp://poj.org/problem?id=2226建图很巧妙,一块木板能覆盖一行或一列的土地,先按行来铺木块,再按列来铺木块*.*. 按行1 0 2 0 按列 1 0 4 0.*** 0 3 3 3 0 3 4 5***. 4原创 2012-08-19 14:51:52 · 1372 阅读 · 0 评论 -
POJ-1087-A Plug for UNIX
POJ-1087-A Plug for UNIXhttp://poj.org/problem?id=1087n1个插座,n2个电器及其对应的插座,n3个转化器,前一个插座可以转化为后一个插座,问最少有多少设备没有插座用,转换器数量不限最大流,源点向插座建边,容量为1,电器向汇点建边,容量为1,相应的插座和电器连边,容量为1,前一个插座转化为后一个插座,后一个插座向前一个插座建边,容量为原创 2012-08-19 11:02:14 · 3243 阅读 · 1 评论 -
HDU-3081-Marriage Match II
HDU-3081-Marriage Match IIhttp://acm.hdu.edu.cn/showproblem.php?pid=3081女生和男生配对,有些女生相互是朋友,每个女生也可以跟她朋友所配对的男生配对每次配对,每个女生都要跟不同的男生配对。问最多能配对几轮。最大流,用并查集处理女生之间的朋友关系,最少配0轮,最多配n轮,二分解之,源点向女生建边,男生向汇点建边,容原创 2012-08-19 10:19:07 · 2213 阅读 · 1 评论 -
HDU-2195-Going Home
HDU-2195-Going Homehttp://acm.hdu.edu.cn/showproblem.php?pid=1533之前用最小费用最大流做的,今天看了最大带权匹配的KM算法,套用了模板来做这题,将所有的H作为X集合,所有的m作为Y集合,构造二分图求最大带权匹配#include#include#include#include#includeusing namesp原创 2012-08-19 19:32:56 · 1053 阅读 · 0 评论 -
POJ-3040-Asteroids
POJ-3040-Asteroidshttp://poj.org/problem?id=3041X表示一个敌人,给出所有敌人的坐标,炸弹可以炸掉该炸弹所在一行或者所在的一列,求最少需要多少个炸弹才能炸掉所有的敌人对于每一个敌人,炸弹要么在该敌人所在的行,要么在该敌人所在的列,将敌人的所在行当作X集合,敌人所在列当作Y集合,每个敌人的X和Y连一条边,那么题目就转为求最小点覆盖,最小点覆盖原创 2012-08-19 12:43:07 · 1745 阅读 · 0 评论 -
二分图匹配
二分图匹配可用匈牙利算法,离散中学过,就是找一条交替链,让路径的起点和终点都是还没有匹配过的点,路径经过的连线是一条没被匹配、一条已经匹配过,再下一条又没匹配这样交替地出现,显然路径里没被匹配的连线比已经匹配了的连线多一条,于是修改匹配图,把路径里所有匹配过的连线去掉匹配关系,把没有匹配的连线变成匹配的,这样匹配数就比原来多1个。不断执行上述操作,直到找不到这样的路径为止。POJ-1274原创 2012-07-01 21:51:32 · 931 阅读 · 0 评论 -
最小路劲覆盖 最小点覆盖 最大独立集
最小路劲覆盖一个不含圈的有向图G 中,G的一个路径覆盖是一个其结点不相交的路径集合P,图中的每一个结点仅包含于P中的某一条路径。路径可以从任意结点开始和结束,且长度也为任意值,包括0。在有向无环图中 最小路径覆盖数 = 顶点总数—最大匹配数POJ-1422-Air Raidhttp://poj.org/problem?id=1422#include#include原创 2012-07-11 23:03:47 · 3500 阅读 · 0 评论 -
欧拉回路
这学期离散里学了欧拉回路图G的一个回路,若它恰通过G中每条边一次,则称该回路为欧拉回路。一个无向图存在欧拉回路,当且仅当该图所有顶点度数都是偶数且该图是连通图HDU-1878-欧拉回路http://acm.hdu.edu.cn/showproblem.php?pid=1878这题判断一个图是否是欧拉回路#include#include#includeint n,m;原创 2012-06-28 23:35:29 · 5474 阅读 · 0 评论 -
最短路劲
HDU-2544-最短路http://acm.hdu.edu.cn/showproblem.php?pid=2544 赤裸裸的DijkstraDijkstra算法是典型的单源最短路径算法,用于计算一个节点到其他所有节点的最短路径#include#include#include#define maxvalue 0x7fffffffint map[105][105];int原创 2012-07-10 17:17:28 · 1771 阅读 · 0 评论 -
POJ-2060-Taxi Cab Scheme
POJ-2060-Taxi Cab Schemehttp://poj.org/problem?id=2060给出一些预约的起始时间,出发地和目的地,问至少需要多少车可以满足所有的预约对于任何一对预约,如果前一预约的结束时刻加上到达下一个预约的所需时间小于下一个预约的起始时间,就在两个预约之间连一条边,题目就转化为求该图的最小路劲覆盖最小路劲覆盖转自 http://baike.b原创 2012-08-24 16:56:54 · 1752 阅读 · 0 评论