id=3041 题目大意:激光可以干掉一整行或一整列陨石,求最少激光次数。 ——— 二分图匹配,对于每一个陨石将它的横纵坐标相连。 然后发现我们需要将每一条边中的端点之一都覆盖掉,就是最小点覆盖。 有结论最小点覆盖=最大匹配数。 然后本题就切了。 #include <cstdio>#include<iostream>#include<cmath>#in...
POJ3041 Asteroids(匈牙利算法) 嘟嘟嘟 虽然我已经会网络流了,但是还是学了一个匈牙利算法。 ——就跟我会线段树,但还是学了树状数组一样。 其实匈牙利算法挺暴力的。简单来说就是先贪心匹配,然后如果左部点ii匹配不上了,就尝试更改前面已经匹配好的点,腾出地给他匹配。 因此对于每一个点跑一遍匈牙利算法,如果这...
id=3041 题意:n*n矩阵上有行星,每次只能在一行或一列放一发子弹,消灭本行或列的所有行星,求消灭所有行星的最小消耗子弹数目。 解法:二分图,行为一个顶点集,列为另一顶点集。题目转化成为选择最少的一些点(x或y),使得从这些点与所有的边相邻,其实这就是最小点覆盖问题。 代码: #include <stdio.h...
poj 3041(最小点覆盖) 题意:有一个n*n的网格,上面有m个小行星,一个武器一次可以摧毁一行或一列的全部小行星,问武器至少多少次能把所有小行星摧毁。 题解:这个问题可以转化为最小点覆盖问题,把每行当做一个点放入左边的集合,每列当做一个点放入右边的集合,然后每个小行星的坐标就是左右集合的一条连线,所有行...
POJ3041AsteroidsTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 26141 Accepted: 14134DescriptionBessie wants to navigate her spaceship through a dangerous asteroid field in the shape of an N x N grid (1 <= N <= 500). The grid contains K asteroids (1 <= K <= 10,000), ...
(5)二分图的最大匹配 (匈牙利算法) (poj3041,poj3020) (6)最大流的增广路算法(KM算法). (poj1459,poj3436) 三.数据结构. (1)串 (poj1035,poj3080,poj1936) (2)排序(快排、归并排(与逆序数有关)、堆排) (poj2388,poj2299) (3)简单并查集的应用. ...
POJ3041-Asteroids POJ3080-Blue Jeans POJ3083-Children of the Candy Corn POJ3087-Shufflem Up POJ3094-Quicksum POJ3096-Surprising Strings POJ3122-Pie POJ3126-Prime Path POJ3176-Cow Bowling POJ3177-Redundant Paths POJ3239-Solution to the n Queens Puzzle ...
(4)拓扑排序 (poj1094)(5)二分图的最大匹配 (匈牙利算法) (poj3041,poj3020)(6)最大流的增广路...
(5)二分图的最大匹配(匈牙利算法) (poj3041,poj3020) (6)最大流的增广路算法(KM算法). (poj1459,poj3436) 三.数据结构. (1)串(poj1035,poj3080,poj1936) (2)排序(快排、归并排(与逆序数有关)、堆排) (poj2388,poj2299) (3)简单并查集的应用. (4)哈希表和二分查找等高效查找法(数的Hash,串的...