题意:图没什么用  给出一个地图 地图上有 点 一次可以覆盖2个连续 的点( 左右 或者 上下表示连续)问最少几条边可以使得每个点都被覆盖 最小路径覆盖       最小路径覆盖=|G|-最大匹配数                   证明:https://blog.csdn.net/qq_34564984/article/details/52778763 证明总的来说就是尽可能多得连边 边越多 可以打包一起处理得点就越多(这里题中打包指连续得两个点只需要一条线段就能覆盖) 拆点思想   :匈牙…
Antenna Placement Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 12104   Accepted: 5954 Description The Global Aerial Research Centre has been allotted the task of building the fifth generation of mobile phone nets in Sweden. The most s…
Antenna Placement Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10699   Accepted: 5265 Description The Global Aerial Research Centre has been allotted the task of building the fifth generation of mobile phone nets in Sweden. The most s…
题意:一些女的和一些男的有好感,有好感的能一起坐过山车,问最多能组成多少对 hdu 11 页上少有的算法题,二分图匹配问题,匈牙利算法,对于每一个汉子,看和他有好感的妹子有没有配对了,没有配对过就可以成功配对,若已经配对过了,就看那个妹子所配对的汉子能不能再找个没有配对的妹子,如果可以就拆散当前配对重组配对,否则就不能拆:如果找完所有有好感的妹子仍然没能配对成功,那这个汉子就注定孤独一生了``` #include<stdio.h> #include<string.h> ],next…
题目:在保证尽量多的“车”的前提下,棋盘里有些格子是可以避开的,也就是说,不在这些格子上放车,也可以保证尽量多的“车”被放下.但是某些格子若不放子,就 无法保证放尽量多的“车”,这样的格子被称做重要点.Gardon想让小希算出有多少个这样的重要点,你能解决这个问题么? 二分图匹配居然还能这么用!!!脑洞大开啊!!! 思路:把棋盘的行x看成二分图左边的点,列y看成二分图右边的点,那么就把可以放车的位置看成是一条边,而二分图的最大匹配中x互不相同,y 互不相同,所以每个匹配都是不同行不同列,所以最大…
链接: http://poj.org/problem?id=3020 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82834#problem/H 首先分别对顶点进行编号:空地用0表示. 1002 3400 0056 7890 接下来划分顶点集合 集合u: 1 2 4 5 8 集合v: 3 6 7 9 问题就是求这两个集合之间的最小路径覆盖. 最小路径覆盖 = 顶点个数 - 最大匹配数 建图时为了方便,如果顶点u和顶点v相邻,就认为g…
链接: http://poj.org/problem?id=3020 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82834#problem/H 代码: #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define N 510 #define I…
http://poj.org/problem?id=3020 题意:给定一个n*m的矩阵,'*'代表城市,现在想要用1*2的矩阵将所有的城市覆盖,问最少需要多少个矩阵? 分析:先为每个城市进行标号,再构建图,用匈牙利算法算出最大匹配.由于这里面用了双向边进行构图,所以最终所求答案为点集数-匹配数/2. 点集数-匹配数/2 = 点集数-匹配数/2*2+匹配数/2(单独的一个点的+匹配成功的点/2) #include <cstdio> #include <cstring> #inclu…
Uncle Tom's Inherited Land* Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 3232    Accepted Submission(s): 1354Special Judge Problem Description Your old uncle Tom inherited a piece of land fro…
题意用1*2的木板覆盖矩阵中的‘#’,(木板要覆盖的只能是‘#’),问最多能用几个木板覆盖 将#抽象为二分图的点,一个木板就是一个匹配,注意最后结果要除以2 Sample Input 1 6 ...... .##... .##... ....#. ....## ...... Sample Output Case 1: 3   #include<cstdio> #include<iostream> #include<algorithm> #include<cstri…