这是一个二分图匹配+贪心+离散 首先,如果不考虑时间1e8的范围的话,直接将任务按照从大到小的顺序排序,然后直接最大匹配然后求和就行了 但是,这道题的时间轴很长,会炸内存 那么我们就将任务按照左端点排序,然后从小到大进行离散,然后用一个pos数组来记录离散后的i对应原来的左端点的真实值是多少 然后再 ...
分类:
其他好文 时间:
2017-10-02 18:23:33
阅读次数:
162
题意:给定一个 n * m 的矩阵,有一些格子有目标,每次可以消灭一行或者一列,问你最少要几次才能完成。 析:把 行看成 X,把列看成是 Y,每个目标都连一条线,那么就是一个二分图的最小覆盖数,这个答案就是二分图的最大匹配,在输出解的时候,就是从匈牙利树上,从X的未盖点出发,然后标记X和Y,最后X中 ...
分类:
其他好文 时间:
2017-09-27 22:34:14
阅读次数:
246
题目描述 Description 给出一张n*n(n<=100)的国际象棋棋盘,其中被删除了一些点,问可以使用多少1*2的多米诺骨牌进行掩盖。 题目描述 Description 给出一张n*n(n<=100)的国际象棋棋盘,其中被删除了一些点,问可以使用多少1*2的多米诺骨牌进行掩盖。 给出一张n* ...
分类:
其他好文 时间:
2017-09-26 19:18:58
阅读次数:
182
链接:https://vjudge.net/problem/27475 题意:给定一个二维矩阵,在一些格子里放置了东西,然后你有一门炮,每次能横向或纵向开一炮,将这一行所有的东西摧毁。问你最少花多少炮弹摧毁所有的东西?并输出一组解。 题解: 很久之前做的题目了,今天在看到的时候还是很有新的体会的。这 ...
分类:
其他好文 时间:
2017-09-25 17:25:31
阅读次数:
117
题意:给出一个折线图,有N条线段,你想要把这些线段分成几个集合,使得每个集合中任意两条线段不想交 题解: 最小路径覆盖 把每条线段当成一个点,若两条线段不相交则连一条边,则问题可转化为用最少的路径数使所有点都被经过,即为最小路径覆盖 最小路径覆盖=N-二分图最大匹配 注意:连边只能往一个方向连,即表 ...
分类:
其他好文 时间:
2017-09-22 11:57:03
阅读次数:
182
【任务】 给定一个二分图,用匈牙利算法求这个二分图的最大匹配数。 【说明】 求最大匹配,那么我们希望每一个在左边的点都尽量找到右边的一个点和它匹配。 我们一次枚举左边的点x的所有出边指向的点y, 若y之前没有被匹配,那么(x,y)就是一对合法的匹配,我们将匹配数加一, 否则我们试图给原来匹配的y和x ...
分类:
编程语言 时间:
2017-09-18 01:14:16
阅读次数:
327
题目: 题目已经说了是最大二分匹配题, 查了一下最大二分匹配题有两种解法, 匈牙利算法和网络流。 看了一下觉得匈牙利算法更好理解, 然后我照着小红书模板打了一遍就过了。 匈牙利算法:先试着把没用过的左边的点和没用过的右边的点连起来, 如果遇到一个点已经连过就试着把原来的拆掉 把现在这条线连起来看能不 ...
分类:
编程语言 时间:
2017-09-18 00:21:07
阅读次数:
203
题目链接:hdu 4416 Good Article Good sentence 题意: 给你一个串A和n个串B,问你A有多少个子串不是这n个B的子串。 题解: 将A串建立后缀自动机,对于每个B串都拿去匹配一下,并记录后缀自动机中每个节点的最大匹配长度。 然后拓扑排序,更新每个节点的fail节点。最 ...
分类:
其他好文 时间:
2017-09-14 12:03:15
阅读次数:
130