两种方法 1.Kruskal算法(解决疏松图) 7.最小生成树计数 做法:应用最小生成树的两条性质: 1.不同的最小生成树中,每种权值的边出现的个数是确定的 2.不同的生成树中,某一种权值的边连接完成后,形成的联通块状态是一样的 此时需要记录所有的边权种类,最小生成树需要的种类边权个数,暴力二进制枚 ...
分类:
其他好文 时间:
2019-10-12 20:40:34
阅读次数:
74
介绍几种贪心题型 1.选择不相交区间: 按照结束时间从大到小排序,如果区间左端点大于当前最右点就选,否则不选。 例题:活动安排: 2.区间选点问题: 按照区间的结束位置从大到小排序。对于当前区间如果选的点不够,就尽量在区间末尾选点。 例题:种树 3.区间覆盖问题: 将闭区间按照左端点从小到大排序。对 ...
分类:
其他好文 时间:
2019-10-12 20:30:57
阅读次数:
154
"loj" 我本来是直接口胡了一个意思一样的做法的,但是因为觉得有点假+实现要用并查集(?)就卡了好一会儿... 对于一个点$x$来说,独特的点一定在它的最长链上,如果有独特的点不在最长链上,那么最长链上一定有和他到$x$距离相同的点,矛盾 然后对于一个点,最长链端点一定可以是直径的两端点之一,所以 ...
分类:
其他好文 时间:
2019-10-11 23:06:37
阅读次数:
80
之前在网上看到了很多难懂的证明方法,这里说一种我觉得很简单的证明 首先是一个显然的性质: 最大匹配中: 所有的边,一定至少有一端是匹配边端点,否则的话就不是最大匹配 然后是讨论:所有的边有3类:1.左端点匹配 2.右端点匹配 3.左右端点都匹配 下面考虑这样一种选点方式:所有的边(除匹配边外),左端 ...
分类:
其他好文 时间:
2019-10-11 20:28:08
阅读次数:
100
1.问题 给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点?(i,?ai) 。在坐标内画 n 条垂直线,垂直线 i?的两个端点分别为?(i,?ai) 和 (i, 0)。找出其中的两条线,使得它们与?x?轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器,且?n?的值至少 ...
分类:
其他好文 时间:
2019-10-11 01:23:39
阅读次数:
76
1D1D动态规划的转移式是长这样的: 对于形如f(i)=min(f(j)+w(j,i)) ,1=calc(i,q[tail].l)calc(q[tail].p,q[tail].l) =calc(i,q[tail].l) 表明当前决策点比队尾优秀,队尾弹出 4.否则说明决策点在当前队尾的范围内,需要通 ...
分类:
其他好文 时间:
2019-10-11 00:43:06
阅读次数:
73
题目: 给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。n >= 2。 题解: 先来了一发n^2的 ...
分类:
其他好文 时间:
2019-10-10 22:32:24
阅读次数:
93
****考虑如何使环变成一条链,等价于 :环中的两点之间如果包含了链的左端点,则这两点必然不能互相看到**** 所以只要保证链的左端点高度最高即可。 对于有若干个最高的山也不会影响。因为两个最高点之间任意方向的弧形都满足条件。 设l[i]表示i左边第一个比i高的位置,r[i]表示i右边第一个比i高的 ...
分类:
其他好文 时间:
2019-10-10 00:24:50
阅读次数:
110
题意$T$个询问,每次询问给出$n,k$,你需要回答数据范围:$1le Tle 100000, 0le n,kle 100000$莫队这题需要用普通莫队算法。我们将每个询问$(n,k)$离线存下来,并用莫队处理区间问题的方法将其分块后排序。($n$当做左端点,$k$当做右端点)我们知道要想用莫队算法... ...
分类:
其他好文 时间:
2019-10-09 17:36:29
阅读次数:
117
"CF660C" / reference: translation: n个长度的01串,可以改变k个0到1,求最长连续1的长度 n即是求最长只包含k个0的01串长度 solution: 1.O(n^3)枚举左右端点,判断其间0的个数是否k 时移动左端点到0的个数 using namespace st ...
分类:
其他好文 时间:
2019-10-08 12:22:33
阅读次数:
74