前置知识:线段树,链式前向星,LCA,DFS序 树链剖分通常的操作: 1.x y 的路径上修改 2.x y 的路径上查询 3. 对于 x 的子树修改 4.对于 x 的子树查询。 一般还有换根操作。树剖也也可以做LCA。 树链剖分有两个DFS 这两个DFS就是把一棵树变成一个序列。 然后就可以用数据结 ...
分类:
其他好文 时间:
2019-10-03 16:12:30
阅读次数:
81
Spfa $Spfa$ 算法的全称是: $Shortest$ $Path$ $Faster$ $Algorithm$ ,是 $Bellman Ford$ 算法的队列优化算法的别称,通常用于求含负权边的单源最短路径,以及判负权环。 基本原理 设立一个先进先出的队列用来保存待优化的结点,优化时每次取出队 ...
分类:
其他好文 时间:
2019-09-12 21:31:47
阅读次数:
92
(………………)#include<bits/stdc++.h> const int maxn=10000015; using namespace std; int n,m,s; int dis[maxn]; //链式前向星 const int N=10005,M=5000005; int e,fir... ...
分类:
其他好文 时间:
2019-08-24 09:52:21
阅读次数:
64
1 #include <cstdio> 2 #include <cstring> 3 #include <queue> 4 #include <vector> 5 #include <algorithm> 6 using namespace std; 7 /*********************... ...
分类:
其他好文 时间:
2019-08-19 14:39:36
阅读次数:
88
Pants On Fire 题目描述 Donald and Mike are the leaders of the free world and haven’t yet (after half a year) managed to start a nuclear war. It is so grea ...
分类:
其他好文 时间:
2019-08-18 17:53:22
阅读次数:
98
参考自https://blog.csdn.net/ACdreamers/article/details/16902023 对于前向星,我的理解就是将边集按照起点顺序进行排序后存储(而并没有将终点也进行排序的必要)。同时head[u]记录以u为起点的边集在数组中的第一个(读入时首次出现)存储位置。 前 ...
分类:
其他好文 时间:
2019-08-14 13:02:29
阅读次数:
105
蒟蒻的第一篇题解,大佬们轻喷(瑟瑟发抖 言归正传,这道题 看见题解区大佬们用各式各样的神仙算法切了这道题,小蒟蒻表示并不会那么多神仙算法,于是乎就水一发题解来谈谈自己的做法. 算法: Tarjan + 拓扑排序 + DP 思路: 看见这道题首先就想到tarjan缩点(~~我不会告诉你这是因为我只会t ...
分类:
其他好文 时间:
2019-08-08 21:07:38
阅读次数:
69
转自:https://blog.csdn.net/hz18790581821/article/details/70233495 我们首先来看一下什么是前向星. 前向星是一种特殊的边集数组,我们把边集数组中的每一条边按照起点从小到大排序,如果起点相同就按照终点从小到大排序, 并记录下以某个点为起点的所 ...
分类:
其他好文 时间:
2019-07-20 09:42:57
阅读次数:
62