HDU 2236 无题II //MaxMatch
来源:互联网 发布:网络骚扰电话怎样报警 编辑:程序博客网 时间:2024/06/08 06:24
无题II
Time Limit: 2000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 214 Accepted Submission(s): 102
对于每组数据第一行输入一个正整数n(1<=n<=100)表示矩阵的大小。
接着输入n行,每行n个数x(0<=x<=100)。
141 1 1 12 2 2 23 3 3 34 4 4 4
3
Statistic | Submit | Discuss | Back
枚举差值+最小点集覆盖
#include<stdio.h>
#include<string.h>
int a[101][101];
bool map[101][101],usedif[101];
int link[101];
int maxn,minn,fir,last,n;
bool can(int t)
{
for(int i=0;i<n;i++)
if(usedif[i]==false&&map[t][i]==true)
{
usedif[i]=true;
if(link[i]==-1||can(link[i]))
{
link[i]=t;
return true;
}
}
return false;
}
bool MaxMatch()
{
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
if(a[i][j]>=fir&&a[i][j]<=last) map[i][j]=true;
else map[i][j]=false;
memset(link,-1,sizeof(link));
for(int i=0;i<n;i++)
{
memset(usedif,false,sizeof(usedif));
if(!can(i)) return false;
}
return true;
}
int solve()
{
fir=minn;
last=maxn;
int min=1<<25-1;
while(fir>=0&&fir<=last)
{
if(MaxMatch())
{
if(min>last-fir) min=last-fir;
fir++;
}
else
{
last--;
fir--;
}
}
//for(int i=0;i<n;i++) printf("%d/n",link[i]);
return min;
}
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
maxn=-1,minn=1<<25-1;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{
scanf("%d",&a[i][j]);
if(a[i][j]>maxn) maxn=a[i][j];
if(a[i][j]<minn) minn=a[i][j];
}
printf("%d/n",solve());
}
return 0;
}
- HDU 2236 无题II //MaxMatch
- hdu 2236 无题II
- hdu 2236 无题II
- 【HDU】2236 无题II 二分+二分匹配
- hdu 2236 无题II 二分 + 二分匹配
- Hdu 2236 无题II 最大匹配+二分
- HDU 2236 无题II 二分+最大匹配
- HDU 2236 无题II(二分图匹配+二分)
- hdoj 2236 无题II
- hdu 2336 无题II 【二分+二分匹配】
- TJU / HDU Matrix Swapping // MAXMATCH
- HDU 2236(无题II) 二分匹配(匈牙利,HK)+二分查找
- hdu 2236 无题II(二分法,枚举,二分图最大匹配)
- HDU 2236 无题II(二分匹配模板题,匈牙利算法)
- hdu 无题II(二分差值+最大匹配)
- HDU 2389 Rain on your Parade //MAXMATCH
- HDOJ 2236 - 无题II 暴力+二分图最大匹配判断
- hdoj 2236 无题II 【二分图匹配&&匈牙利算法】
- (转贴)PHP面试题系列一【附答案】
- 读书笔记之编程之美 - 2.17 数组循环移位
- (2010-08-22)利用jQuery实现的Ajax 验证用户名是否存在
- 【转】在Visual C++中检测和隔离内存泄漏
- Win7安vc2008编译报LINK : fatal error LNK1000: Internal error during IncrBuildImage
- HDU 2236 无题II //MaxMatch
- 关于GomezPeer赚钱的可行性调查
- 精妙SQL速查手册
- wine支持的软件的卸载
- 华为北研所参观感受
- fedora vs. ubuntu
- 自定义HttpModule
- Android中Intent详解
- 绑定时间格式