D - 棋盘游戏 - HDU 1281(二分图匹配)
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std; const int MAXN = ; bool G[MAXN][MAXN], used[MAXN]; bool Find(int i, int N, int p[])
{
for(int j=; j<=N; j++)
{
if(G[i][j] && used[j] == false)
{
used[j] = true;
if(!p[j] || Find(p[j], N, p))
{
p[j] = i;
return true;
}
}
} return false;
} int XYL(int p[], int M, int N)
{
int ans = ;
for(int i=; i<=M; i++)
{
memset(used, false, sizeof(used));
if(Find(i, N, p) == true)
ans++;
} return ans;
} int main()
{
int N, M, T, t=; while(scanf("%d%d%d", &M, &N, &T) != EOF)
{
int i, u, v;
int p1[MAXN]={}, p2[MAXN]={}; memset(G, false, sizeof(G)); while(T--)
{
scanf("%d%d", &u, &v);
G[u][v] = true;
} int Max = XYL(p1, M, N);
int imp=; for(i=; i<=N; i++)
{
if(p1[i])
{
memset(p2, , sizeof(p2)); G[ p1[i] ][i] = false;
if(XYL(p2, M, N) < Max)
imp++;
G[ p1[i] ][i] = true;
}
} printf("Board %d have %d important blanks for %d chessmen.\n", t++, imp, Max);
} }
D - 棋盘游戏 - HDU 1281(二分图匹配)的更多相关文章
- hdu 1281 二分图匹配
题目:在保证尽量多的“车”的前提下,棋盘里有些格子是可以避开的,也就是说,不在这些格子上放车,也可以保证尽量多的“车”被放下.但是某些格子若不放子,就 无法保证放尽量多的“车”,这样的格子被称做重要点 ...
- hdu 2063 二分图匹配
题意:一些女的和一些男的有好感,有好感的能一起坐过山车,问最多能组成多少对 hdu 11 页上少有的算法题,二分图匹配问题,匈牙利算法,对于每一个汉子,看和他有好感的妹子有没有配对了,没有配对过就可以 ...
- (匹配 匈牙利)棋盘游戏 -- Hdu --1281
链接: http://acm.hdu.edu.cn/showproblem.php?pid=1281 http://acm.hust.edu.cn/vjudge/contest/view.action ...
- 棋盘游戏 HDU - 1281 (删点 二分匹配)
小希和Gardon在玩一个游戏:对一个N*M的棋盘,在格子里放尽量多的一些国际象棋里面的“车”,并且使得他们不能互相攻击,这当然很简单,但是Gardon限制了只有某些格子才可以放,小希还是很轻松的解决 ...
- hdu 1281 二分图最大匹配
对N个可以放棋子的点(X1,Y1),(x2,Y2)......(Xn,Yn);我们把它竖着排看看~(当然X1可以对多个点~) X1 Y1 X2 Y2 X3 Y3 ..... Xn Yn ...
- HDU 1281 二分图
棋盘游戏 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- hdu 4185 二分图匹配
题意用1*2的木板覆盖矩阵中的‘#’,(木板要覆盖的只能是‘#’),问最多能用几个木板覆盖 将#抽象为二分图的点,一个木板就是一个匹配,注意最后结果要除以2 Sample Input 1 6 .... ...
- hdu 1507(二分图匹配)
Uncle Tom's Inherited Land* Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (J ...
- 过山车 HDU 2063 (二分图匹配裸题)
Problem Description RPG girls今天和大家一起去游乐场玩,终于可以坐上梦寐以求的过山车了.可是,过山车的每一排只有两个座位,而且还有条不成文的规矩,就是每个女生必须找个个男生 ...
随机推荐
- python与数值计算环境搭建
数值计算的编程的软件很多种,也见过一些编程绘图软件的对比. 利用Python进行数值计算,需要用到numpy(矩阵) ,scipy(公式符号), matplotlib(绘图)这些工具包. 1.Linu ...
- 自己编写SqlHelper
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...
- JAVA集合差异
接口 简述 实现 操作特性 成员要求 Set 成员不能重复 HashSet 外部无序地遍历成员 成员可为任意Object子类的对象,但如果覆盖了equals方法,同时注意修改hashCode方法. T ...
- angular.bind
angular.bind :Returns a function which calls function fn bound to self (self becomes the this for fn ...
- Razor html标签
1.Label Html语法: <label for=“UserName”>用户名</label> Razor语法: @Html.LabelFor(m=>m.UserNa ...
- asp.net中调用COM组件发布IIS时常见错误 80070005解决方案
很多人在.net开发Web站点中引用了COM组件,调试时一切正常,但一发布到IIS下就提示如下错误: 检索 COM 类工厂中 CLSID 为 {} 的组件时失败,原因是出现以下错误: 80070005 ...
- 国内各IE内核浏览器所调用的IE版本--转了
60浏览器,腾讯浏览器,世界之窗,遨游…IE的套套浏览器真是到处都是,在日常生活中,身边的朋友用的也不少,毕竟很多人对浏览器这东西不了解,在他们眼里,神马内核一点区别都没有,但咱们做前端的对这些东西可 ...
- (Error) The type AESKeyGenerator is not accessible due to restriction on required library.
error for 'Access restriction: The type AESKeyGenerator is not accessible due to restriction on requ ...
- oracle系统包——dbms job用法(oracle定时任务)
用于安排和管理作业队列,通过使用作业,可以使ORACLE数据库定期执行特定的任务. 一.dbms_job涉及到的知识点1.创建job:variable jobno number;dbms_job.su ...
- java_reflect_04
反射操作数组: 通过public Class<?> getComponentType()来取得一个数组的Class对象 例: import java.lang.reflect.Array ...