UVALive 6811 Irrigation Lines(匈牙利算法)

ANSYS Maxwell:创建即用型 3D 轴向磁通电机模型 Magnet Length” 是磁体的径向长度。“Magnet Thickness” 是磁体的轴向长度。为了对 AFM 进行更详细的分析,用户需要在 ANSYS Maxwell 中运行 3D FEA 分析。对于 2D 模型,它们类似于 MotorCAD 中的模型,后者对等效的直线电机进行建模。单击“确定”后,将创建一个 3D Maxwell 模型。“长度”是转子铁的轴向长度。然后需要定义定子的“磁芯”尺寸和材料。“长度”是定子铁芯的轴向长度。“转子”# 的极数必须与“定子”中定义的磁极相同。 阅读详情

题目链接:http://acm.hust.edu.cn/vjudge/problem/73800

题意:给出若干行01串,每次可以消掉一行1或一列1,问最少几次能把所有的1消完。

思路:  我们可以把每一行看做X点集中的一个点,每一列看做Y点集中的一个点,如果第i行第j列为1,就从X点集中的对应的点i向Y点集中的点j连一条边。这样问题就转化成了,给出一个二分图,用最少的点覆盖所有的边(一条边被覆盖即这条边至少有一个端点在这些点上),即求最小点覆盖数。

              由二分图的性质可知,最小匹配数等于最大点覆盖数。证明如下:设该图最小点覆盖数为X,最大匹配数为M。

            (1)首先证明X>=M,因为最大匹配数为M,而这M条边的端点各不相同,仅覆盖这M条边就需要M个点,所以有X>=M。

            (2)下面证明X<=M,用反证法,假设X>M,,即若用M个点覆盖这些边,至少有一条边没有被覆盖,那个这条边的两个端点都没有边相连,所以这条边可以使得最大匹配                        数加1,这与最大匹配数为M矛盾,所以X<=M.

              综上所述,X=M。


#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;

const int maxn = 100 + 10;
char s[maxn][maxn];
int vis[maxn], from[maxn];
int n,m;

bool solve(int x)
{
    for (int i = 0; i < m; i++) {
        if (s[x][i] == '0') continue;
        if (!vis[i]) {
            vis[i] = 1;
            if (from[i] == -1 || solve(from[i])) {
                from[i] = x;
                return true;
            }
        }
    }
    return false;
}

int main()
{
    int T, kase = 0;
    scanf("%d",&T);
    while(T--) {
        
        memset(from, -1, sizeof from);
        scanf("%d%d",&n,&m);
        for (int i = 0; i < n; i++) scanf("%s",s[i]);
        int ans = 0;
        for (int i = 0; i < n; i++)
            if (memset(vis, 0, sizeof vis),solve(i)) ++ans;
        printf("Case #%d: %d\n", ++kase, ans);
    }
    return 0;
}


利用ArcGIS快速生成等高线边界,完成地形图拼图 地形图边界一般在CAD中手动绘制,然而,一幅边缘复杂的地形图边界的绘制需要花费大量时间和精力,为了减少重复性工作,提高效率,用ArcGIS软件可以自动生成实测地形图的边界 阅读详情

相关推荐

从零到一:DETR模型在自定义数据集上的实战部署与调优

本文详细介绍了DETR模型在自定义数据集上的实战部署与调优过程,包括环境准备、数据转换、模型配置、训练技巧及问题排查。通过具体代码示例和实用建议,帮助开发者高效完成从零到一的DETR模型部署,特别适合目标检测领域的实践应用。

weixin_42524100的博客 463

ACM-ICPC Live Archive 6811 - Irrigation Lines

怎么读题时就没意识到“每行每列各有一个水阀”?这是把问题转化成二分图模型的关键啊 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4823 #include #include #include using namespa

aksdrxzd的专栏 405

CMU动作捕捉数据集实战:从AMC文件到Python可视化的完整流程

本文提供了CMU动作捕捉数据集的完整实战指南,详细解析了AMC文件格式,并对比了MATLAB转换、Python原生解析及转换为BVH格式三种数据解析策略。重点介绍了如何构建Python数据处理与可视化管道,包括将数据转换为Pandas DataFrame、绘制时间序列与相关性热力图,以及实现3D骨架动画,帮助开发者高效利用这一经典动作捕获数据集进行运动分析与模型训练。

android的专栏 716

UVaLive/LA 6811 Irrigation Lines(二部图,最小点覆盖)

题目大意: 矩形的农田,每行每列都有一个闸门,一些格子内中有庄稼,问最少开几个阀门,使得所有的庄稼都能得到灌溉。 解题思路: 明显的二部图最小点覆盖模型。基本属于二部图最大匹配的模板题。将行最为一个集合,列作为一个集合,庄稼(即行与列的交叉点)作为关系连边,问题转化为,同最少几个点(行或列),覆盖所有的边(庄稼),即最小点覆盖。 用匈牙利算法即可。

wujy的专栏 1282

【Qt-4】QT基于qhttp-server搭建http服务器

QT搭建http服务器

WXG1011的博客 5712

巡检领域红外热成像相机镜头焦距选择方法总结

摘要:巡检机器人红外热成像相机镜头焦距的选择需综合考虑检测距离、视场角、目标分辨率等核心要素。短焦距(4-6mm)适用于室内近距离巡检,中焦距(12-19mm)适合变电站等中等距离场景,长焦距(25-50mm)则用于光伏板等远距离检测。选型需遵循焦距计算公式f=SL×d,确保目标占据≥3×3像元,同时考虑机器人安装空间、环境适应性及软件联动需求。建议通过样机实测或仿真软件验证选型合理性,以实现对设备故障的精准识别。

start_up_go的博客 299

UVALive 6811 Irrigation Lines (二分图最小点覆盖--匈牙利算法)

大体题意: 给你一个n*m 的矩形,里面有的是1,有的是0,求最少的竖线或者横线  使得覆盖所有的1! 思路: 二分图的最小点覆盖! 比赛没有搞出来,乱写的,还写了许多贪心!!! 那个样例来说吧! 0 1 0 1 0 1 0 1 0 他最少两条直线就够了! 我们给他标号!      c1 c2 c3 r1  0   1   0 r2  1   0   1 r3  0  

aozil_yang的博客 668

C盘在同一时间突然多出100g的文件,请问是什么原因,以及是否能删除?

🏆本文收录于 《全栈Bug调优(实战版)》 专栏,该专栏专注于分享我在真实项目开发中遇到的各类疑难Bug及其深层成因,并系统提供高效、可复现的解决思路和实操方案。无论你是刚入行的新手开发者,还是拥有多年项目经验的资深工程师,本专栏都将为你提供一条系统化、高质量的问题排查与优化路径,助力你加速成长,攻克技术壁垒,迈向技术价值最大化与职业发展的更高峰🚀!

**My Coding Family** 1761

二分图最小点覆盖 UVALive 6811

https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&amp;Itemid=8&amp;page=show_problem&amp;problem=4823题目意思是在一个地图中有一些植物,然后用灌溉设备去冲洗它们,每个灌溉设备可以冲洗某一行或者某一列,那么如果需要冲洗掉所有的植物,我们最少需要多少个设备?其实题目是...

keepcoral的博客 289

HTML爱心字母雨(完整代码)

HTML语言实现爱心字母雨的完整代码。

AIGC 2万+

智能挂锁软件需求规格说明书(SRS)

智能挂锁系统SmartPadlockV1.0是一款融合蓝牙通信、指纹识别和远程控制技术的便携式安防设备。系统由设备端、移动App和云平台三部分组成,支持蓝牙配对(10米内)、指纹识别、OTP一次性密码等多种开锁方式,响应时间<1.5秒。产品采用SM2/SM4加密技术保障安全,日均20次使用下续航达180天,兼容iOS13+/Android8.0+系统。功能包括设备绑定、远程授权、开锁记录查询和OTA固件升级,符合个人信息保护法规要求,适用于仓储、快递柜等多场景应用。

moton2017的博客 2112

求解二分图的最大匹配的匈牙利算法---POJ 1325 Machine Schedule

【基本概念】 二分图:简单来说,如果图中点可以被分为两组,并且使得所有边都跨越组的边界,则这就是一个二分图。准确地说:把一个图的顶点划分为两个不相交集 U 和V ,使得每一条边都分别连接U、V中的顶点。如果存在这样的划分,则此图为一个二分图。 二分图的一个等价定义是:不含有「含奇数条边的环」的图。 匹配:在图论中,一个「匹配」(matching)是一个边的集合,其中任意两条边都没有公共顶点。

Keaper的博客 1920

【Unity】【VR】如何让Distance Grab抓取物品时限制物品的Rotation

VR中Canvas抓取旋转问题的解决方案 在VR应用中,Canvas作为UI面板常需被抓取拖动,但默认会随手柄产生Z轴旋转,导致UI歪斜。Unity的Rigidbody冻结旋转功能对此无效,因为XR抓取直接修改Transform而非物理模拟。

每日出拳老爷子的博客 611

【运筹学】匈牙利法 ( 匈牙利法步骤 | 第二步 : 试指派操作示例 )

一、指派问题求解步骤、 二、第二步 : 试指派操作示例

让 学习 成为一种 习惯 ( 韩曙亮 の 技术博客 ) 7266

Camera2Demo

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

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【算法题】任务分配问题---匈牙利算法

一、问题描述 问题描述:N个人分配N项任务,一个人只能分配一项任务,一项任务只能分配给一个人,将一项任务分配给一个人是需要支付报酬,如何分配任务,保证支付的报酬总数最小。 问题数学描述:    二、实例分析---穷举法 在讲将匈牙利算法解决任务问题之前,先分析几个具体实例。 以3个工作人员和3项任务为实例,下图为薪酬图表和根据薪酬图表所得的cost矩阵。    利用最简单的方法(穷...

weixin_33827590的博客 4105

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

UVALive 6811 Irrigation Line(二分图最小点覆盖--匈牙利算法)

题意:求最少的线可以覆盖一个由0、1两种数字组成的图中所有的1。 eg: 只需要两条线即可。 分析: 1、先为上述例子的行列标号 2、若图中数字为1,则代表该数字所在的行与列有关联。 例如第r1行第c3列的数字1,可以看成r1和c3为两个点,因为此处是数字1,所以这两个点之间可以连1条线 3、所以可转化为如下的二分图 4、可以简单的理解为只要图中某个位置是数字1,...

Cherrychan2014的博客 165

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

UVa 1001 Say Cheese (Floyd)

题目链接:http://acm.hust.edu.cn/vjudge/problem/35891 大体题意:给出n个球形洞的坐标和半径,以及小老鼠A和B的坐标,问小老鼠A最快多长时间能到达B的位置。 思路:

Interstellar_的博客 993

HDU 5545 The Battle of Guandu (最短路Dijkstra)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5545 题目大意:有n个村庄,m个战场。对于村庄i,曹操可以支付c[i]*num元,使得这个村庄派遣num个士兵去战场x[i]为曹操作战,同时,这个村庄也会派遣num个士兵去战场y[i]为袁绍作战。                     对于每个战场,有3种重要度(0,1,2)。    

Interstellar_的博客 808

HDU 5544 Ba Gua Zhen (DFS找环+线性基)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5544 题目大意:给出一个无向连通图,求一个回路,使得该回路中所有路径权值的亦或最大(某条边经过几次,则亦或几次) 思路:首先找出图中所有的独立环,所谓独立环,就是不能由其它环线性表示出的环。易知,回路是由若干个独立环线性组合而成的。那么我们可以求出每个独立环的亦或值,存到数组中,那

Interstellar_的博客 800

HDU 5441 Travel (离线处理+并查集)

Travel Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total Submission(s): 2914    Accepted Submission(s): 998 Problem Description Jack likes to travel a

Interstellar_的博客 708

UVa 1658 Admiral (最小费用最大流、拆点法)

题目链接:http://vjudge.net/problem/UVA-1658 题意:给出n个点m条边,求1-n的两条不相交的路径(除1和n外,每个点仅经过一次),使得路径总权值最小。 思路:除起点终点外,每个点仅经过一次,这就限制了结点的经过次数。为了达到这个效果,我们把除起点终点外每个点u拆成u和u',中间连一条容量为1、费用为0的弧,这样原来u-v的弧就变成了u-u'-v

Interstellar_的博客 690

UVa 12118 Inspector's Dilemma (欧拉道路)

题目链接:https://cn.vjudge.net/problem/UVA-12118 大意:给出一个V结点的图,每两点之间都有一条双向道路相连,长度为T。现要找一条最短的道路,使得该道路经过E条指定的边。 思路:本题可以转化为,已知E条边,现要增加尽量少的边,使它们和这E条边组成欧拉通(回)路。因为图不一定连通,所以要想满足要求,每个连通块都要设法将其变成欧拉通(回)路,具

Interstellar_的博客 680

UVa 1151 Buy or Build (最小生成树)

题目链接:http://acm.hust.edu.cn/vjudge/problem/36013 题目大意:给你n个点,你的任务是让这n个点连通。为此,你有两种方法,1、在某两点之间建边,费用为两点之间欧几里得距离的平方。2、购买一些套餐,当买了某个套餐后,套餐中的这些点将变得相互连通,问完成任务的最小费用是多少。 思路:若直接枚举套餐,再求最小生成树,肯定会超时。所以,按刘汝佳说的那样,先求

Interstellar_的博客 635

UVa 1146 Now or Later (2-SAT)

题目链接:https://vjudge.net/problem/UVA-1146 题意:有n架飞机需要登陆。每架飞机可以选择“早着陆”和“晚着陆”两种方式,且必须选择一种。第i架飞机早着陆时间为Ei,晚着陆时间为Li,不得在其他时间着陆。求:在把所有飞机按照实际着陆时间从早到晚排好序的情况下,相邻两个着陆时间间隔的最小值最大是多少。 思路:最大化最小值,可以用二分来求解。则可以把问题转化为,任

Interstellar_的博客 620

CodeForces 160D Edges in MST (tarjan)

题目链接:http://codeforces.com/problemset/problem/160/D 题意:给出一个n个点m条边(无自环无重边)的无向图,求问它的所有最小生成树中:哪些边在所有最小生成树中都出现、那些可能出现、那些都不出现。 思路:首先有一个结论:把一个连通无向图的生成树的边按权值递增排序,称排好序的边权列表为有序边权列表,则任意两棵最小生成树的有序边权列表是相同的。因此,借

Interstellar_的博客 607

UVALive 3645 Objective: Berlin (最大流,拆点法)

题目链接:http://vjudge.net/contest/138956#problem/B        把每条航线看做一个点,因为每条航线涉及两个时间点,所以把每个点拆成两个(u和u'),分别对应较早的和较晚的那个时间,之间连一条弧,容量为该航线的载客量。若航线i可以与航线j相连,则将航线i的u'向航线j的u之间连一条弧,容量为无穷大。并增加源点s和汇点t,由s向每个出发点(u)连

Interstellar_的博客 594
上一篇: UVa 11235 Frequent values (RMQ)
下一篇: UVa 1329 Corporative Network(并查集)
Interstellar_
博客等级 码龄10年 8粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值