POJ-3020 Antenna Placement(最小点覆盖)
来源:互联网 发布:vimeo视频下载 mac 编辑:程序博客网 时间:2024/05/19 19:55
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<limits.h>#include<queue>#include<math.h>#include<algorithm>using namespace std;#define maxn 550int n,m;char s[50][50];int map[maxn][maxn];int tot[50][50];int v[maxn];int x;int ans[maxn];int dfs(int xs){for(int i=0;i<x;i++){if(map[xs][i]==1 && !ans[i]){ans[i]=1;if(!v[i] || dfs(v[i])) { v[i]=xs; return 1; }}}return 0;}int main(){int T,i,j;scanf("%d",&T);while(T--){memset(map,0,sizeof(map)); memset(v,0,sizeof(v));scanf("%d%d",&n,&m);x=0;for(i=0;i<n;i++){scanf("%s",s[i]); for(j=0;j<m;j++) if(s[i][j]=='*') tot[i][j]=x++; }for(i=0;i<n;i++) for(j=0;j<m;j++) { if(s[i][j]=='*') { if(i>0 && s[i-1][j]=='*') map[tot[i][j]][tot[i-1][j]]=1; if(i<n-1 &&s[i+1][j]=='*') map[tot[i][j]][tot[i+1][j]]=1; if(j>0 && s[i][j-1]=='*') map[tot[i][j]][tot[i][j-1]]=1; if(j<m-1 && s[i][j+1]=='*') map[tot[i][j]][tot[i][j+1]]=1; } }int sum=0;for(i=0;i<x;i++){memset(ans,0,sizeof(ans));int t=dfs(i);if(t) sum++;}printf("%d\n",x-sum/2);}}
关键在选点上
0 0
- POJ-3020 Antenna Placement(最小点覆盖)
- poj 3020 Antenna Placement (最小路径覆盖)
- poj 3020Antenna Placement 最小边覆盖
- poj 3020 Antenna Placement (最小边覆盖)
- POJ 3020 Antenna Placement(最小边覆盖)
- POJ 3020 Antenna Placement (最小路径覆盖)
- POJ 3020 Antenna Placement (最小边覆盖)
- POJ 3020:Antenna Placement(最小路径覆盖)
- poj 3020 Antenna Placement (最小路径覆盖, 匈牙利算法, 拆点形成二分图)
- poj3020-Antenna Placement-最小点覆盖
- 【二分图+最小路径覆盖】北大 poj 3020 Antenna Placement
- poj 3020 Antenna Placement 匈牙利二分匹配 最小覆盖数 !!!!
- POJ 3020Antenna Placement(二分图最小顶点覆盖)
- poj 3020 Antenna Placement(最小路径覆盖 + 匈牙利算法)
- poj 3020 Antenna Placement 二分图最小路径覆盖
- POJ 3020 Antenna Placement(匈牙利算法—最小路径覆盖)
- POJ 3020 Antenna Placement ,二分图的最小路径覆盖
- POJ 3020 Antenna Placement(二分图建图训练 + 最小路径覆盖)
- POJ 3169 Layout (差分约束系统,Bellman-Ford)
- git创建本地分支以及推送本地分之至远程分支
- Python 下的 lambda 算子
- NOIP2016 暑期培训 D2
- POJ 青蛙的约会 (扩展欧几里得)
- POJ-3020 Antenna Placement(最小点覆盖)
- jQuery Mobile的基本组织结构
- SurfaceView与View的区别
- ApplicationContext的三种实现方式以及在web.xml配置的两种方式
- 2016.8.2测试结题报告(number,circle,submatrix)
- MFC中修改对话框、按钮、编辑框背景色(另一种防错法)
- 安装SQL Server 2008数据库
- 最小生成树与并查集
- HDU5781 ATM Mechine