02 2011 档案
sicily 1303 Job Assigment(二分图最大权匹配)
摘要:View Code 工作人员集合M和工作N是二分图的两个部分,工作人员i对工作j的满意度k作为边<i,j>的权值,要求一个令所有工作人员满意度最大的匹配就是求这个二分图的带权最大匹配。这里用到KM算法,由于不是很懂KM算法,所以要感谢http://www.cnblogs.com/north_dragon/archive/2010/06/03/1750789.html这位大牛的模板。在一年中最较特殊的2月的最后一天抓住AC的机会。#include <iostream>#include <cstring>#include <cstdio>using
阅读全文
sicily 1402Panic Room(最大流最小割)
摘要:View Code 设置超级源点s(此处标号为m的房间就是源点),如果房间k有入侵者(intruder),则存在一条有s指向k的弧,且容量为c(s,k)=INF;然后是处理由门联通的两个房间的关系了。(1)如果房间i和j有门且cp在i,则c(i,j)=INF,c(j,i)=1;(2)如果房间i和j有门且cp在j,则c(i,j)=1,c(j,i)=INF;超级汇点t就是要保护的房间号码。计算从s到t的最大流ans.若ans>=INF,说明无法保护,否则ans为需要锁上的门的最小数量。#include <iostream>#include <cstring>#incl
阅读全文
HDU3549(Flow Problem)(网络最大流)
摘要:赤裸裸的Ford-Fulkerson算法求最大流。#include <iostream>#include <cstring>#include <queue>using namespace std;const int MAX = 1003;int map[MAX][MAX],pre[MAX],n,m,ans;bool vis[MAX];int Maxflow() // 采用BFS找增广路径{ while(true) { queue<int> que; memset(pre,0,sizeof(pre)); memset(vis,0,sizeof(vi
阅读全文
浙公网安备 33010602011771号