这是个好题,菜鸟刚学dp,这题把我以前的想法全都给完完全全的颠覆了。其实是自己没了解无后效性的概念。
然后我去开开心心滴跑去问队长:”队长,队长,怎么理解动归的无后效性啊???“
学长很深沉滴对我说:”做多了就会了“
"噢噢”(好吧)
然后学长又补了句:“能构成有向无环图的都能用DP搞."
我心里想:”队长就知道搞妹~~~。“
默默去翻小白书看看DAG去了。
为了搞清楚这题怎...
分类:
其他好文 时间:
2014-07-20 23:17:13
阅读次数:
336
我们已经知道了如何通过Dijkstra算法在非负权图中找到最短路径。即使图中有负权边,我们也知道通过Bellman-Ford算法找到一个从 给定的源点到其它所有节点的最短路径。现在我们将看到一个在线性时间内运行得更快的算法,它可以在有向无环图中找到从一个给定的源点到其它所有可达顶点的 最短路径,又名...
分类:
其他好文 时间:
2014-07-16 20:24:55
阅读次数:
199
题意:给定一个有向图,问有多少个点由任意顶点出发都能达到。分析:首先,在一个有向无环图中,能被所有点达到点,出度一定是0。先求出所有的强连通分支,然后把每个强连通分支收缩成一个点,重新建图,这样,这个有向图就变成了一个有向无环图。在这个新的图中,只需知道出度为0的点有几个即可。如果出度为0的点超过1...
分类:
其他好文 时间:
2014-07-12 13:38:59
阅读次数:
244
给一个有向图,问有多少结点是其他所有结点都可以到达的。
等价于,在一个有向无环图上,找出度为0 的结点,如果出度为0的结点只有一个,那么这个就是答案,如果大于1个,则答案是0。
这题有环,所以先缩点。求唯一出度为0的强连通分量。
#include
#include
#include
#include
#include
#define inf 0x3f3f3f3f
using na...
分类:
其他好文 时间:
2014-07-10 19:48:45
阅读次数:
192
HDU 3032 Nim or not Nim? (sg函数求解)
题目大意:
Alice和Bob轮流取N堆石子,每堆S[i]个,Alice先,每一次可以从任意一堆中拿走任意个石子,也可以将一堆石子分为两个小堆。先拿完者获胜。(1 ≤ N ≤ 10^6, 1 ≤ S[i] ≤ 2^31 - 1)
解题思路:
对于一个给定的有向无环图,定义关于图的每个顶点的Sprague-Grundy函数g如下:g(x)=mex{ g(y) | y是x的后继 },这里的g(x)即sg[x]
例如:取石子问题,有1堆n...
分类:
其他好文 时间:
2014-07-06 00:44:38
阅读次数:
339
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=1143题意:给出一个有向无环图。在其中找出一个最大的点集使得点集中任意两个点之间不可达。思路:首先在给出图中跑一次floyd,这样g[i][j]=1则i可到达j。那么题意就是求最大独立集。最...
分类:
其他好文 时间:
2014-06-23 07:32:38
阅读次数:
279
题目链接:点击打开链接
人民城管爱人民
Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 128000/64000 KB (Java/Others)
SubmitStatistic Next
Problem
Problem Description
一天GG正在和他的后宫之一的MM在外面溜达,MM突然说了...
分类:
其他好文 时间:
2014-06-20 09:15:52
阅读次数:
191
思路:如果出现了一个强连通分量,那么走到这个点时一定会在强连通分量里的点全部走一遍,这样才能更大。所以我们首先用Tarjan跑一遍求出所有强连通分量,然后将强连通分量缩成点(用到栈)然后就变成了一个DAG(有向无环图),然后跑一遍DFS,不断加上遍历点的权值,如果到了网吧,则更新一遍答案,因为可以出...
分类:
其他好文 时间:
2014-06-15 11:38:55
阅读次数:
179
题目来源:Light OJ 1168 Wishing Snake
题意:有点难看懂题意 看了一个小时再加别人的代码才懂意思
从0开始 输入的那些每一对u v 都要经过 就是从0到到达那些点
思路:首先缩点 每一个强连通分量里面的点都是可达的
缩点后的图是有向无环图 如果从0这个强连通分量可以出去到2个强连通分量 那么这两个强连通分量是不可能相互可达
所以可行的方案就是所有的强连通分量...
分类:
其他好文 时间:
2014-06-11 00:50:25
阅读次数:
242