hdu1533 KM演算法逆向版

2021-08-08 18:17:11 字數 726 閱讀 7911

思路:

原版km演算法求的是最大權值完美匹配,這題要求的是最小權值完美匹配,第一種思路,把邊取負,跑最大權值km演算法,得到的答案取負即可。

**:#include using namespace std;

const int maxn = 103;

const int inf = 0x3f3f3f3f;

int w[maxn][maxn],lx[maxn],ly[maxn],slack[maxn],link[maxn],visx[maxn],visy[maxn],arr[maxn][maxn];

int n,m;

bool dfs(int u)

}else}}

return false;

}void update()

}for(int i = 1;i<=n;i++)

}int km()

}else}}

return false;

}void update()

}for(int i = 1;i<=n;i++)

//原版為lx[i]-=d,ly[i]+=d;

}int km()

{ memset(link,-1,sizeof(link));

for(int i = 1;i<=n;i++)

{ly[i] = 0,lx[i] = inf;

for(int j = 1;j<=n;j++)

{//cout<

hdu2255 KM演算法模板

題意 n個人選n個房子,每個人對每個房子分別有乙個出價。乙個人只能買乙個房子,求最大利潤。思路 帶權二分匹配問題,可以用最大費用流做,但是km演算法更高效。include using namespace std const int maxn 303 const int inf 0x3f3f3f3f ...

完美匹配 KM演算法 HDU總結

size medium kidx 的解題報告 img b size medium 首先獻上模板 size b define m 505 define inf 0x3fffffff bool sx m sy m int match m w m m n,m,d,lx m ly m n 左集元素個數 m ...

hdu 225 奔小康賺大錢 Km 演算法

problem description 傳說在遙遠的地方有乙個非常富裕的村落,有一天,村長決定進行制度改革 重新分配房子。這可是一件大事,關係到人民的住房問題啊。村里共有n間房間,剛好有n家老百姓,考慮到每家都要有房住 如果有老百姓沒房子住的話,容易引起不安定因素 每家必須分配到一間房子且只能得到一...