上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 24 下一页
摘要: 这个文章的思路是按照 "这里" 来的。这里讨论的都是无向图。应该有向图也差不多。 1.如何求割点 首先来看求割点。割点必须满足去掉其以后,图被分割。tarjan算法考虑了两个: 根节点如果有两颗及以上子树,它就是割点。因为它没有父亲了(可怜的点)。 对于有父亲的普通的结点a,如果它递归树的子树中,有 阅读全文
posted @ 2017-12-03 13:20 pechpo 阅读(406) 评论(0) 推荐(0)
摘要: POJ 3660 Cow Contest (传递闭包) 有n头牛比赛,m种比赛结果,把这些比赛结果告诉你(就是谁打败了谁的形式),最后问你一共有多少头牛的排名被确定了。n using namespace std; const int maxn=105, maxm=4505; int n, m, an 阅读全文
posted @ 2017-12-01 20:42 pechpo 阅读(117) 评论(0) 推荐(0)
摘要: 社交网络 floy拓展 给定一个由n个点组成的无向图,求所有点的$V(x)=\sum_{C(a,b)}^{C(a, b)(v)}(a\ne b)$,其中$C(a, b)$表示(a,b)这条最短路路径的条数,$C(a, b)(v)$表示(a,b)最短路中经过v的最短路的条数。$n\le 100$。 这 阅读全文
posted @ 2017-11-28 16:15 pechpo 阅读(192) 评论(0) 推荐(0)
摘要: hdu1599 floyd求最小环 其实floyd求最小环就相当于找出一个一条只包括1到k 1中节点的路径,然后把这个路径与k这个节点相连。这样是正确的原因是,最小环中一定有一个最大节点k,当最外层节点是k时,我们一定会枚举到k两端的两个节点,这样就统计出了答案。至于为什么不能直接用最短路径,而是要 阅读全文
posted @ 2017-11-27 19:22 pechpo 阅读(149) 评论(0) 推荐(0)
摘要: 最长公共子序列 给出1 n的两个排列P1和P2,求它们的最长公共子序列。对于100%的数据,n≤100000。 我们可以发现,我们只关心元素的关系,而不关心元素的大小。所以可以把a数组中的值换成123..n,也就是建立一个对应关系$map[i]$,表示$map[a[i]]=i$,那么要找b和a的最长 阅读全文
posted @ 2017-11-10 09:38 pechpo 阅读(236) 评论(0) 推荐(0)
摘要: C 国有 n 个大城市和 m 条道路,每条道路连接这 n 个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为 1 条。C 国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同 阅读全文
posted @ 2017-11-09 18:12 pechpo 阅读(143) 评论(0) 推荐(0)
摘要: 最短路算法合集 ~~noip快要考了发现spfa不会打的我~~决定来总结一下最短路算法。 dijkstra dijkstra基于最短路的最优子结构性质。设$s(u, v)$表示u到v的最短路,若k是它们最短路L上的点,那么$s(u, k)+s(k, v)=s(u, v)$(首先$s(u, k)+s( 阅读全文
posted @ 2017-11-09 15:51 pechpo 阅读(298) 评论(0) 推荐(0)
摘要: 软件安装(树形dp) 现在我们的手头有N个软件,对于一个软件i,它要占用Wi的磁盘空间,它的价值为Vi。我们希望从中选择一些软件安装到一台磁盘容量为M计算机上,使得这些软件的价值尽可能大(即Vi的和最大)。但是现在有个问题:软件之间存在依赖关系,即软件i只有在安装了软件j(包括软件j的直接或间接依赖 阅读全文
posted @ 2017-11-09 10:10 pechpo 阅读(162) 评论(0) 推荐(0)
摘要: 选课(树形dp) 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习。现在有N门功课,每门课有个学分,每门课有一门或没有直接先修课(若课程a是课程b的先修课即只有学完了课程a,才能学习课程b)。一个学生要 阅读全文
posted @ 2017-11-05 08:02 pechpo 阅读(149) 评论(0) 推荐(0)
摘要: 为什么01背包要倒着推,完全背包要顺着推 我忽然发现,这个小学的知识点,额,一直没有弄懂。现在赶快总结一下。 01背包每个物品只能选一次,所以若用$f[i][v]$表示前i件物品,恰好放入一个容量为v的背包可获得的最大价值,那么其二维状态转移方程是:$f[i][v]=max(f[i 1][v], f 阅读全文
posted @ 2017-11-04 10:45 pechpo 阅读(1284) 评论(1) 推荐(0)
上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 24 下一页