摘要:
题意 给出一个有向图,A任务:求最少需要从几个点送入信息,使得信息可以通过有向图走遍每一个点B任务:求最少需要加入几条边,使得有向图是一个强联通分量 思路 任务A,比较好想,可以通过tarjan缩点,求出入度为0的点的个数任务B一开始以为任务A,B没有关系其实是入度为0的点的个数、出度为0的点的个数 阅读全文
摘要:
题意 给定一个有向图,每条边的花费为1。现在有一个空间跑路器,可以走$2^k$长度的路,只用花1秒的时间。问从1走到n最少的时间。n <= 50, k <= 64。 思路 这道题说是倍增,但是写起来不见倍增的影子,我觉得真妙,对倍增有了更膜拜的认识。我们可以开一个bool矩阵$dp[i][j][k] 阅读全文
摘要:
题意 给定一个无向图,问删掉点i,图中相连的有序对数。(pair<x, y> , x != y);求每个点对应的答案 思路 首先我们可以发现,如果这个点不是割点,那么答案就是n-1,如果是割点,就要考虑子树中的联通块。可以用tarjan,O(n)的复杂度 #include <algorithm> # 阅读全文