POJ 3020 二分匹配

三代测序选型指南:PacBio HiFi vs Nanopore vs Illumina技术对比与适用场景 本文深入对比了三代测序技术PacBio HiFi、Nanopore与Illumina的核心参数、成本模型和应用场景,为生物信息学研究提供选型指南。通过实测数据和技术组合策略分析,帮助实验室根据研究需求选择最适合的测序方案,涵盖基因组组装、表观遗传学等关键应用领域。 阅读详情

先建图,找最大匹配数ans

找出每个'*'  ti,ti的上下左右的‘*’与ti相连

结果为 n - ans/2

#include<cstdio>
#include<cstring>
using namespace std;
#define M 500
bool g[M][M];
bool vis[M];
char s[M][M];
int a[M][M];
int link[M];
int n,r,c,ans;
int nx[]={1,0,0,-1};
int ny[]={0,1,-1,0};

void read()
{
	int i;
	for(i=0;i<r;i++)
	{
		scanf("%s",s[i]);
	}
}

void init()
{
	memset(g,0,sizeof(g));
	memset(a,0,sizeof(a));
	n=0;
	int i,j,k;
	for(i=0;i<r;i++)
	{
		for(j=0;j<c;j++)
		{
			if(s[i][j]=='*')
			{
				a[i][j]=++n;
			}
		}
	}
	
	int tx,ty;
	for(i=0;i<r;i++)
	{
		for(j=0;j<c;j++)
		{
			if(a[i][j])
			{
				for(k=0;k<4;k++)
				{
					tx=i+nx[k];
					ty=j+ny[k];
					if(tx>=0&&tx<r&&ty>=0&&ty<c&&a[tx][ty])
					{
						g[ a[i][j] ][ a[tx][ty] ]=true;
					}
				}
			}
		}
	}
}

bool find(int x)
{
	int i;
	for(i=1;i<=n;i++)
	{
		if(g[x][i]&&!vis[i])
		{
			vis[i]=true;
			if(link[i]==0 || find(link[i]) )
			{
				link[i]=x;
				return true;
			}
		}
	}
	return false;
}

void cal()
{
	init();
	memset(link,0,sizeof(link));
	ans=0;
	
	int i;
	for(i=1;i<=n;i++)
	{
		memset(vis,0,sizeof(vis));
		if(find(i))
		{
			ans++;
		}
	}
}

void answer()
{
	printf("%d\n",n-ans/2);
}

int main()
{
	int T;
	scanf("%d",&T);
	while(T--)
	{
		scanf("%d%d",&r,&c);
		read();
		cal();
		answer();
	}
	return 0;
}



PostgreSQL 实战:行级安全策略(RLS)详解 PostgreSQL的行级安全(RLS)机制实现了细粒度的数据访问控制,通过动态过滤行数据满足多租户隔离、隐私保护等需求。本文系统介绍了RLS的核心原理、配置方法及实践建议:1) 启用RLS后需定义策略,通过USING和WITH CHECK条件控制访问;2) 适用于SaaS、医疗金融等场景,但需注意COPY命令、外键等特殊情况;3) 建议配合会话变量、索引优化和文档化策略使用。文章还提供了多租户隔离等实战案例,并分析了RLS对查询性能的影响及优化方案。RLS将安全控制下沉至数据库层,显著提升应用安全性和可维 阅读详情

相关推荐

VMware Workstation Pro 17 高效安装与激活指南

本文详细介绍了VMware Workstation Pro 17的高效安装与激活方法,包括系统要求、安装步骤、常见问题解决方案及性能优化技巧。通过专业的指导,帮助用户快速掌握这款强大的虚拟机软件,提升工作效率。

weixin_29322855的博客 402

poj 3020 (二分匹配)

题意:给出一些城市的坐标,每个信号基站可以覆盖两个相邻的点,问最少要建多少个基站。 思路:我们要尽可能多的建立能覆盖两个城市的基站(二分匹配最大匹配),剩下的城市每个城市建立一个基站。先求出最大匹                配数k。n-k*2+k=n-k; #include #include const int N=500; int head[N],nu

菜鸟起航的专栏 917

Cadence Sigrity PowerDC实战:如何用PCB电热混合仿真解决散热难题(附详细配置步骤)

本文详细介绍了如何利用Cadence Sigrity PowerDC进行PCB电热混合仿真,以解决高功率密度设计中的散热难题。文章通过解析电热耦合原理,并附上详细的配置步骤与实战技巧,指导硬件工程师同步优化电气性能与热管理,从而在设计源头提升产品可靠性与效率。

weixin_29292535的博客 199

ACM POJ 3020 Antenna Placement 二分匹配

题目链接:http://poj.org/problem?id=3020 题意:相邻两个点可以圈起来,问图中所有的'*'点都被圈起来需要的最小的圈的个数。 分析:1.建二分图;               图中的点可以二分,                 2.做二分匹配;ans='*'点的个数-最大匹配;

岁月静好 691

实战|验证码突破思路

漏洞成因:由于逻辑设计缺陷,可绕过验证,比如直接删除COOKIE或验证码参数可绕过、当验证不通过清空session时,验证码参数值为空时绕过等。测试方法:抓包,删除验证码字段,查看是否可以成功发送抓包,正常流程下,记录验证码后的数据包,替换目标包中内容,直接发送,查看是否可以直接绕过验证码案例:Step1.输入正确账户信息和错误验证码,登录时抓包Step2.删除COOKIEStep3.客户端登陆成功。

weixin_46239998的博客 8106

利用ArcGIS的模型构建器实现批量投影栅格和批量克里金插值

博主要批量投影几百个栅格,但是ArcGIS中的投影栅格的批处理工具需要手动一条条设置参数,还是麻烦,因此学习了使用模型构建器(ModelBuilder)来批量投影栅格,可以导入需投影栅格的文件夹,然后迭代投影,并按栅格原名逐个输出到指定目录。 1.在工具箱里构建模型 在arctool box里右键点击空白处,选择【添加工具箱】,点击ArcGIS默认工作目录的工具箱进行添加,然后Toolbox就会被添加到ArcToolbox页面,右键点击Toolbox,选择“新建”-“模型” 2.编写模型 (1).

qq_36958801的博客 1万+

POJ3020 Antenna Placement 二分匹配

Problem Address:http://poj.org/problem?id=3020 【前言】 第一次交了WA。 但是不知道哪里错了。 后来改啊改啊交了,A了。 验证了之后发现只是第一次没注意好。 原来的模板为连接设置为0,标号必须从1开始。然

Human_CK的专栏 585

拆解一个800G光模块:手把手带你认识里面的MT插芯和光纤阵列(FA)

本文详细拆解了800G光模块中的关键组件MT插芯和光纤阵列(FA),揭示了并行光学技术如何实现高速数据传输。通过显微镜下的精密观察,展示了MT插芯的高精度构造和光纤阵列的连接奥秘,同时解析了高精度研磨工艺对光信号传输的重要性。这些微型组件是高速收发模块实现800Gbps带宽的核心技术。

weixin_30839881的博客 1557

POJ 3020 Antenna Placement (二分匹配)

这道题要求对二分匹配有一个比较详细的了解!同时还要动一点小小的脑筋! 和hdu4185是一个建图思想,然后不一样的是,4185里面不要求覆盖所有的点,但是这个题目是要求覆盖所有的点,用少的椭圆! 那么很显然,要求一个最大匹配,然后看有几个点没有匹配上的,就在最大匹配的基础上加上几个椭圆! 还有,这道题,第一次提交RE了,是因为我把数组最大订到了40,忘记了如果给每个点标记后,一共最多可能有4

AClion的专栏 1241

保姆级教程:用达芬奇Configurator配置CAN总线(从DBC导入到Controller设置)

本文详细介绍了使用达芬奇Configurator工具从DBC文件导入到CAN总线控制器设置的全流程配置方法。通过环境准备、CAN控制器模式选择、硬件参数配置、通信参数优化及通信栈集成等关键步骤,帮助开发者高效完成AUTOSAR架构下的CAN总线开发,特别适合汽车电子领域的工程师参考。

weixin_30529023的博客 443

【100分】最长子字符串的长度

题目要求在一个环形字符串中找出字符 ‘o’ 出现了偶数次的最长子字符串长度。这里的字符串是一个环形的,即首尾相连。代码统计了字符串中字符 ‘o’ 的出现次数,并根据其奇偶性返回相应的最长子字符串长度。当 ‘o’ 的数量为偶数时,直接返回字符串长度;当 ‘o’ 的数量为奇数时,返回长度减去 1。给你一个字符串 s,字符串s首尾相连成一个环形 ,请你在环中找出 ‘o’ 字符出现了偶数次最长子字符串的长度。【最长子字符串的长度】

weixin_54707168的博客 899

poj - 3020(二分匹配)

题目:http://poj.org/problem?id=3020 The Global Aerial Research Centre has been allotted the task of building the fifth generation of mobile phone nets in Sweden. The most striking reason why they got t...

偷吃了老鼠的土豆 302

【Linux】Windows11 安装 WSL2 并运行 Ubuntu 22.04 详细操作步骤

Windows 11 安装 WSL2 和 Ubuntu 22.04 指南 本文详细介绍在 Windows 11 上安装 WSL2 和 Ubuntu 22.04 的完整步骤,包括: WSL2 与 VirtualBox 的性能对比优势 系统版本检查与升级方法 两种安装方式(一键安装和手动安装) Ubuntu 22.04 的安装与配置 存储位置管理及迁移技巧 常用 WSL2 命令速查表 文章还提供了性能优化建议和常见问题解决方案,适合开发者和 Linux 爱好者快速搭建高效的开发环境。

No8g攻城狮的博客 2万+

POJ 3020 Antenna Placement(最大二分匹配)

//最大二分匹配(匈牙利算法)//这题实际上是求最小路径覆盖,但根据最小路径覆盖的定义可以将它转化为最大二分匹配//最小路径覆盖 = |V| - 最大独立集 = |V| - 最大二分匹配 (二分图中最大独立集 = 最大二分匹配)//但是在构图过程中,匹配是双向的,即 和都算匹配,因此匹配数多了1倍,所以要除以2//最后得出公式: ans = V + maxMatch/2#

Czy 1492

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

POJ3020【二分匹配】

思路: ---说给自己 一开始想的是从1-h*w标记整幅图,建图是星号和 {他,与他相连的星号} 建边,肯定要去匹配"*"啊,所以空格一定不会去造,然后就理解成了最小点覆盖,然而对于最小点覆盖,对于 孤立点(也就是没有连出去的边) ,这样就错了。。。但是对于这个思路还是打完了,然后发现错了。。。其实对于“正确”思路要先想想是嘛。。。 ---正解 这题题意是一个圈最多只能圈两个" * ",那

ONE MORE TRY 472

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

POJ 3020 Antenna Placement【二分匹配——最小路径覆盖】

链接: http://poj.org/problem?id=3020 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=22010#problem/M Antenna Placement Time Limit: 1000MS   Memory Limit: 65536K

free斩 2687

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

poj3020--Antenna Placement(二分匹配)

Antenna Placement Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6315   Accepted: 3114 Description The Global Aerial Research Centre has been allotted the t

随风的专栏 1061

POJ 3020 Antenna Placement (二分匹配, 带花树, 状压dp)

题目类型  Dijkstra算法的运用 题目意思 中文题目描述 解题方法 先枚举地位的范围(因为第1件物品必须在交易中出现所以范围区间的左端点就是 L1-m -> L1 右端点范围是 L1 -> L1+m) 确定范围后就是类似Dijkstra算法的贪心过程 d[i] 表示交易终点停在第 i 个物品时总共所需的花费 那么每次取最小的 d[i]

yunyouxi0's blog 968

poj3020 二分图 最大二分匹配

Antenna Placement Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5486   Accepted: 2743 Description The Global Aerial Research Centre has been allotted the tas

习惯与规则决定命运 810

POJ 3020 Antenna Placement 二分匹配

二分图匹配问题。 一开始想不到怎么建图,参考了别人的代码之后才写出来  = - =  #include #include #include #include #include #include #include #include #include #include #include #include #define PI acos(-1.0) #define Max

just_water 702

poj 3020 Antenna Placement 二分匹配

#include <stdio.h> #include <string.h> #include <iostream> #include <algorithm> #include <vector> #include <queue> #include <stack> #include <set> #include <map> #include <string> #include <math.h> #in

禅境花园 386

POJ 3020 二分匹配DAG图的最大独立集

提示:别被图片的圈圈误导了,看清楚题目,'*'是城市,'o'是空地,椭圆的天线覆盖范围要覆盖的是城市'*',而不是覆盖空地   题目大意: 一个矩形中,有N个城市’*’,现在这n个城市都要覆盖无线,若放置一个基站,那么它至多可以覆盖相邻的两个城市。 问至少放置多少个基站才能使得所有的城市都覆盖无线? 解题思路: 思前想后,依稀可以认为是一道求二分图的最小路径覆盖问题 (注意不是最

旧时光 1024

poj3020 Antenna Placement 二分匹配 最小路径覆盖

#include #include #include #include #include #include #include #include #include #include #include #include #include #define ll long long #define LL __int64 #define eps 1e-8 const ll INF=999999999999

shaonianguai 856

POJ3020 Antenna Placement 二分匹配 || 一般图匹配

题目:http://poj.org/problem?id=3020题意:给定一个n*m的矩阵,矩阵中有‘’和‘o’两种元素,每次可以覆盖一个或者两个相邻的‘’(上下左右四个方向相邻),问最少多少次可以覆盖所有的‘*’思路二分匹配: 把每个‘’拆成两个点,相邻的‘’进行连边,可以转换为二分图的最小边覆盖问题,注意这里每个点拆成了两个点!!! 一般图匹配: 每个‘’视作一个点,相邻的‘’直接连边,

弱智就要多努力 361

POJ 3020 Antenna Placement(二分匹配+拆点)

POJ 3020 Antenna Placement(二分匹配+拆点)

1782

(poj)3020 Antenna Placement 匹配

题目链接 :http://poj.org/problem?id=3020 Description The Global Aerial Research Centre has been allotted the task of building the fifth generation of mobile phone nets in Sweden. The most striking ...

weixin_30260399的博客 74
上一篇: hdu 2255 KM 奔小康赚大钱
下一篇: POJ 1459
MakingMaker
博客等级 码龄15年 6粉丝 108原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值