二分匹配
这是简介
小鱼yn
简介
展开
-
POJ 3041 Asteroids(最小点覆盖)
题意:在一个网格中有若干个点,每一次可以一下子清除一行或者一列,问最少几次可以将网格中的点全部清除。通过每个点建立横坐标与纵坐标的连接(即建边),将横坐标和纵坐标看做二分图中的点,选择最少的点来覆盖所有的边。#include<algorithm>#include<iostream>//#include<stdio.h>#include<vector>#include<string>#include<cstring>#in原创 2020-06-27 21:51:53 · 69 阅读 · 0 评论 -
二分图的最小点覆盖-定理证明
最小顶点覆盖定义:假如选了一个点就相当于覆盖了以它为端点的所有边。最小顶点覆盖就是选择最少的点来覆盖所有的边。最开始做题的时候完全没想到最小顶点覆盖和最大匹配有关系,之后找证明过程的时候受博主Matrix67的启发,然后想再按自己的思路证明一下。从问题本身出发:...原创 2020-04-04 22:14:23 · 1200 阅读 · 0 评论 -
二分图【判定、最大匹配、最小点覆盖、最小路径覆盖及例题】
一、最大匹配定义:给定一个二分图G,在G的一个子图M中,M的边集E中的任意两条边都不交汇于同一个结点,则称M是一个匹配。选择边数最大的子图称为最大匹配问题\color{red}{ 定义:给定一个二分图G,在G的一个子图M中, M的边集{E}中的任意两条边都不交汇于同一个结点,则称M是一个匹配。选择边数最大的子图称为最大匹配问题 }定义:给定一个二分图G,在G的一个子图M中,M的边集E中的任意两条...原创 2020-04-04 22:14:12 · 820 阅读 · 0 评论 -
HDU-1045-Fire Net(二分图最大匹配 / 状态压缩)
题意:和棋盘游戏(HDU - 1281)差不多,区别就是这里的墙可以阻挡子弹。1、最大匹配思路:仍然是列和相同一行的点之间的匹配。因为墙可以阻挡子弹,那么如果一行中的点被一堵墙隔开,那么可以“增加一行”,把他们标记为不同行的点;相同的,如果同一列的点被一堵墙隔开,那么可以“增加一列”,并把这两部分点分别与不同的“两列”相关联,这样这一列中就可以匹配两个点了。一题目中的地图为例:每个点的“行...原创 2020-07-16 16:31:05 · 186 阅读 · 0 评论 -
匈牙利算法 + 代码理解
原博文:https://blog.csdn.net/u013384984/article/details/90718287#commentBox作者:土豆钊因为博文里面的理论知识看着太头疼了,就直接看故事了hh,下面有些术语不懂的原博文里面有解释————————————————————————————————————————————二. 匈牙利算法下面我们讨论下匈牙利算法的内容:1. ...转载 2019-07-17 16:58:36 · 870 阅读 · 0 评论