3041专题

二分图最小点覆盖数——POJ 3041

对应POJ题目:点击打开链接 Asteroids Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 15911 Accepted: 8662 Description Bessie wants to navigate her spaceship through a dangerous asteroid

POJ训练计划3041_Asteroids(二分图/最小点覆盖=最大匹配)

解题报告 http://blog.csdn.net/juncoder/article/details/38135053 题目传送门 题意: 给出NxN的矩阵,有M个点是障碍 每次只能删除一行或者一列,最少删除多少次才能清除障碍 思路: 把行和列看作两个集合结点,把障碍看作集合结点的连线,这样就转化成求用最少的点来消灭边,也就是最小点覆盖。 在二分图中:(n个结点,且

poj 3041 Asteroids

题意:n*n的格子里面有k个小行星,每一能消除一行或一列,那么最小消除多少次可以把全部消除掉 思路:把行和列连到一起,可以构成一个二分图,那么只需要求最大匹配数即为所求 <pre name="code" class="cpp">#include <iostream>#include <cstdio>#include <cstring>using namespace std;co

poj 题目3041 Asteroids (最小点覆盖)

http://poj.org/problem?id=3041 最小覆盖: 最小覆盖要求用最少的点(X集合或Y集合的都行)让每条边都至少和其中一个点关联。 可以证明:最少的点(即覆盖数)=最大匹配数 M 简单的证明如下: (1)M个是足够的。只需要让它们覆盖最大匹配的M条边,则其它边一定被覆盖(如果有边e不被覆盖,把e加入后得到一个更大的匹配) (2)M个是必需的,仅考虑形成最大匹配的这M条边

【最小点覆盖】POJ 3041:Asteroids

一、题目内容 POJ 3041 原题地址 二、题意解释 有一个N*N的网格,该网格有K个障碍物.你有一把武器,每次你使用武器可以清楚该网格特定行或列的所有障碍.问你最少需要使用多少次武器能清除网格的所有障碍物? 三、代码及注释 最小点覆盖=最大匹配 最大匹配:在二分图中最多能找到多少条没有公共端点的边 最小点覆盖:选择最少的点使得所有边都至少有一个端点被选中了,倒过来说就是,删除包含

Leetcode 3041. Maximize Consecutive Elements in an Array After Modification

Leetcode 3041. Maximize Consecutive Elements in an Array After Modification 1. 解题思路2. 代码实现 题目链接:3041. Maximize Consecutive Elements in an Array After Modification 1. 解题思路 这一题思路上同样就是一个动态规划,我们首先将原数组进

poj 3041 Asteroids 二分匹配 匈牙利算法 模板题

http://poj.org/problem?id=3041 题意:给你长宽都有n个格子的矩阵,其中一些格子放着星球,现在可以一次 消除 一行或者一列的星球 求要让所有星球都消失的最少的次数。 #include <iostream>#include <cstdio>#include <cstring>#include <cstdlib>#include <cmath>#incl