洛谷P7368 [USACO05NOV] Asteroids G 题解 二分图最小点覆盖 匈牙利算法

news/2024/10/23 2:19:57

题目链接:https://www.luogu.com.cn/problem/P7368

二分图最小点覆盖 模板题。

二分图最小点覆盖与二分图最大匹配的关系。

所以用匈牙利算法求一下二分图最大匹配即可。

示例程序:

#include <bits/stdc++.h>
using namespace std;
const int maxn = 505;int n, m, match[maxn], ans;
vector<int> g[maxn];
bool vis[maxn];int find(int u) {for (auto v : g[u]) {if (vis[v])continue;vis[v] = true;if (!match[v] || find(match[v])) {match[v] = u;return true;}}return false;
}int main() {cin >> n >> m;while (m--) {int u, v;cin >> u >> v;g[u].push_back(v);}for (int i = 1; i <= n; i++) {memset(vis, 0, sizeof vis);if (find(i))ans++;}cout << ans << endl;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/74891.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

数据结构 - 树,三探之代码实现

本文介绍了使用数组和链表两种方式实现二叉树,包括初始化、节点操作(如获取、添加、删除)、以及遍历方法(前序、中序、后序、层次遍历)。测试代码已上传至代码库。书接上回,今天和大家一起动手来自己实现树。相信通过前面的章节学习,大家已经明白树是什么了,今天我们主…

不限次数无广告的短网址生成工具推荐

无论是在社交媒体、营销推广还是日常分享,短网址都能让我们更加便捷地分享内容。然而,在众多的短网址生成工具中,用户常常会遇到一些令人头疼的问题:跳转次数限制、插入广告等等。本文将为大家推荐一款不限次数且无广告的短网址生成工具——小码短链接,并详细介绍其优势。…

使用文件重定向

在Linux终端使用了下文件重定向在试的时候命令比较混乱,再重新捋一下:首先使用vim编辑器创建一个名为test.cpp的文件。 具体内容如下:然后使用g++ -o test test.cpp命令编译生成可执行文件test。接着使用vim编辑器创建了输入文件data.txt 具体内容如下:再运行命令./test &l…

Linux环境PostGIS源码编译安装

前提条件 安装PostGIS之前必须先安装proj,geos,gdal 1、安装proj8 下载proj-8.1.0.tar.gz :http://download.osgeo.org/proj/proj-8.1.0.tar.gz [root@gyl soft]# tar xf proj-8.1.0.tar.gz [root@gyl soft]# cd proj-8.1.0 [root@gyl proj-8.1.0]# ./configure --prefix=/usr…

The 2022 ICPC Asia Xian Regional Contest 前六题

VP一场,成都赛前找手感,这次还不戳,前三题略讲The 2022 ICPC Asia Xian Regional Contest 签到题题解 CFJ J. Strange Sum 易证最多只能选两个,从大到小排序后 \(\max(0, a_1) + \max(0, a_2)\) 即为所求。 void solve(){cin>>n;vector<ll>a(n+1);for(int i=1;…

利用数组处理批量数据

数组是一组有序数据的集合。数组中各数据的排列有一定规律,下标代表数据在数组中的序号 用一个数组名和下标来唯一的确定数组中的元素 数组中的每一个元素都属于同一个数据类型。不能把不同类型的数据放在同一个数组中 将数组和循环结合起来,可以有效的处理大批量的数据 怎样…

执行yum install 的时候提示【没有可用的软件包】的解决方案

这种情况,可能是yum 源不正确的问题,解决方案如下: 1.执行cd /etc/yum.repos.d,进入这个目录下,查看文件是否存在并检查文件内容的正确性 2、CentOS-Base.repo文件可以在网上下载一个,以下是范文# CentOS-Base.repo # # The mirror system uses the connecting IP addres…

newc++file.cpp在哪

本人的newc++file.cpp文件在C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\VC\VCProjectItems可以在这个cpp文件里面自己选择是否写#define _CRT_SECURE_NO_WARNINGS 如果写了,则在visual studio中新建的cpp文件都有这个这个预处理命令主要是为…