![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图
BranZhai
这个作者很懒,什么都没留下…
展开
-
基环树 各种题目整理
基环树声明基环树定义[题目1. CF Number of Simple Paths求简单路径](https://codeforces.com/contest/1454/problem/E)CF官方题解我的题解分析代码功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowc原创 2022-01-27 11:36:52 · 1005 阅读 · 1 评论 -
POJ1330 dfs + ST模板 LCA
https://vjudge.net/problem/POJ-1330#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int MAXV = 10005;int rmq[MAXV << 1];int n;struct ST { int lg[MAXV << 1]; int dp[MAXV原创 2020-08-30 12:19:55 · 109 阅读 · 0 评论 -
LCA Tarjan 模板 洛谷 P3379
https://www.luogu.com.cn/problem/P3379#include <bits/stdc++.h>using namespace std;const int MAXV = 5e5 + 5;int F[MAXV];bool vis[MAXV];int ans[MAXV];struct Edge { int to, nxt;}edge[MAXV << 1];int tol1;int he[MAXV];void ad原创 2020-08-28 23:07:31 · 112 阅读 · 0 评论 -
POJ 1330 LCA 倍增法 bfs模板
https://vjudge.net/problem/POJ-1330#include <cstdio>#include<cstring>#include <queue>using namespace std;const int MAXV = 10005;const int DEG = 20;struct Edge { int to, nxt;}edge[MAXV << 1];int head[MAXV], tol;int原创 2020-08-26 15:11:40 · 142 阅读 · 0 评论 -
P3379 【模板】最近公共祖先(LCA) 倍增法 dfs模板
https://www.luogu.com.cn/problem/P3379#include <bits/stdc++.h>using namespace std;const int MAXV = 5e5 + 5;struct Edge { int to; int nxt;}g[MAXV << 1];int head[MAXV], tol;int depth[MAXV], fa[MAXV][20], lg[MAXV];void adde原创 2020-08-26 11:50:27 · 142 阅读 · 0 评论 -
POJ 3159 Candies 差分规划 + (SPFA | Dijkstra)
POJ 3159题意题目链接题解Dijkstra代码(经过堆优化)SPFA(用队列会超时, 须手动写栈)题意给n个人派糖果,给出m组数据,每组数据包含A,B,c 三个数,意思是A的糖果数比B少的个数不多于c,即B的糖果数 - A的糖果数<= c 。最后求n 比 1 最多多多少糖果。题目链接POJ 3159题解首先,在读懂题意的情况下,仔细想一想,其实要使节点1与节点n之间的差最大,就需要每两个节点之间的糖果数相差最大。其中,同学为节点,允许相差的最大的糖果数是相应的节点之间的权值。原创 2020-07-27 20:37:36 · 113 阅读 · 0 评论 -
POJ1511 SPFA Invitation Cards
POJ1511题目连接题意代码题目连接[POJ1511](https://vjudge.net/problem/POJ-1511)题意就是说从节点1出发然后问从节点1出发到其它各点的花费与其它各点到节点1之和最小SPFA可以之结果,但是如果用kuangbin的板子,采用向量(邻接表)的话会超时,应当用链式前向星来作为数据结构如果链式前向星不太清楚,可以参考以下博客[链式前向星](https://blog.csdn.net/weixin_44758733/article/details/10原创 2020-07-26 22:33:05 · 106 阅读 · 0 评论 -
POJ-2240 SPFA kuangbin模板题 求正负环
目录题目链接题解代码题目链接POJ-2240题解本题和POJ 1860基本是一样的都是求正环,但是这道题由于没有指定起始点和初始金额,所以需要自己手动处理,比如将初始金额设置成1之类的,所以需要将顶点都遍历一遍代码#include <iostream>#include <queue>#include <map>#include <cstring>using namespace std;const int MAXN = 50;struct原创 2020-07-22 10:35:24 · 122 阅读 · 0 评论 -
POJ3660 floyd奶牛排名
目录题目链接题解代码题目链接POJ3660题解首先,大家肯定都可以想到用flody算法来求解,因为floyd相当于求传递闭包,就是很容易理解cow只按照skill level来排名,如果A战胜B,B战胜C那么A战胜C,可以看到是显然的,其实关键在于如何判断一头牛的排名呢?因为题目中有一句话说给定的数据是不矛盾的,不会存在非法的数据,那就好像我们要知道自己在班级的排名是多少名(总人数知道),那么我们只需要知道排在我们前边的有多少人,排在我们后边的有多少人不就知道我们的名次了么。对应奶牛也是一样的,原创 2020-07-21 23:09:03 · 295 阅读 · 0 评论 -
POJ-3259 SPFA求负环 kuangbin板子题
kuangbin板子题题意题目链接floydSPFA题意比较明显是一个求负环的板子题同时这道题floyd也可以勉强过(网上的解法)题目链接POJ-3259floyd#include <cstdio>#include <cmath>#include <cstring>#include <algorithm>using namespace std;typedef long long ll;int n, m, W;const int m原创 2020-07-21 17:00:53 · 354 阅读 · 0 评论 -
POJ-1860 Currency Exchange货币汇率
目录题目链接题目分析floydspfa题目链接POJ-3259题目分析该题讲在这个小城里有多种货币,并且已知每种货币之间的汇率,现在给你某种货币s和一定量的基金v,现在让你开动脑筋能否通过某种操作让你的本金比之前更多。经过分析,你可以将其看作一个图,货币是结点,边是汇率。仔细想一下就是找到一个正权环路(不一定要经过s), 即使经过这个环路一次,但是可以让你的本金增加一点点就可以了,因为你可以经过很多次的交换让你的资本变到无穷大. 因为n只有100所以用floyd或者spfa都可以floyd#in原创 2020-07-20 18:47:50 · 452 阅读 · 0 评论 -
图的存储结构之邻接表(详解)
图的邻接矩阵存储法,它的空间和时间复杂度都是N2,现在我来介绍另外一种存储图的方法:邻接表,这样空间和时间复杂度就都是M。 对于...转载 2020-04-26 10:44:33 · 1297 阅读 · 0 评论 -
Til the Cows Come Home(最短路, Dijkstra算法, spfa(bellman ford)算法, Floyd算法, 深搜DFS)
//TLE 版本#include <iostream>#include <vector>#include <algorithm>#include <cstdio>#include <cstring>#include <set>#include <climits>//#include <bits...原创 2020-04-25 16:50:52 · 530 阅读 · 0 评论