上一页 1 ··· 5 6 7 8 9 10 11 12 13 下一页
摘要: scc:极大的强连通子图(两两相互可达) const int N=10010; int n,m,a,b; vector<int> e[N]; int dfn[N],low[N],tot; int stk[N],instk[N],top; int scc[N],siz[N],cnt; void tar 阅读全文
posted @ 2023-12-09 01:59 potential-star 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 单测试点有多组测试数据,注意fill手动清空 int e[M],ne[M],w[M],h[N],idx; int d[N],cnt[N],vis[N]; //为了卡常用spfa的时候就用链式前向星 void init(){ fill(h,h+n+1,-1);idx=0; } void add(int 阅读全文
posted @ 2023-12-09 00:54 potential-star 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 染色法判别二分图 —— 模板题 AcWing 860. 染色法判定二分图 时间复杂度是 O(n+m), n 表示点数,m 表示边数 bool dfs(int u,int c){//判断存在奇环,存在返回true color[u]=c; for(auto v:e[u]){ if 阅读全文
posted @ 2023-12-08 23:14 potential-star 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 假设 n 表示图中点数,m 表示图中边数。 Prim算法堆优化 时间复杂度 O(nlogn)。 核心思想:每次挑一条与当前集合相连的最短边。 code int ans,cnt; struct edge{int v,w;}; vector<edge> e[N]; int d[N 阅读全文
posted @ 2023-12-08 22:20 potential-star 阅读(6) 评论(0) 推荐(0) 编辑
摘要: const int N = 100010; int n,m,a,b; vector<int> e[N], tp; int din[N];//入度数组 bool toposort(){ queue<int> q; for(int i = 1; i <= n; i++) if(din[i]==0) q. 阅读全文
posted @ 2023-12-08 22:10 potential-star 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 单源最短路: 求一个点到其他点的最短路 多源最短路: 求任意两个点的最短路 稠密图用邻接矩阵存,稀疏图用邻接表存储。 稠密图: m 和 n2 一个级别 稀疏图: m 和 n 一个级别 朴素dij: int n,m,s,a,b,c; const int N=100010; struct edge{in 阅读全文
posted @ 2023-12-07 23:10 potential-star 阅读(14) 评论(0) 推荐(0) 编辑
摘要: https://blog.csdn.net/Xavier_97/article/details/126931927 由于很玄学,我们考虑统一使用库函数round和自己手写round来实现最终输出整数的四舍五入和小数保留k位的四舍五入 #include <iostream> #include <cma 阅读全文
posted @ 2023-12-07 15:09 potential-star 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 无向图无环的,无环的图总是可以展成树的形式。 然后考虑无向图,顶多有回边指向父节点。不可能有回边指向祖先。更不可能有横向边,因为无环啊。所以只需要考虑指向父节点的回边就可以无需使用Vis。 阅读全文
posted @ 2023-12-05 22:05 potential-star 阅读(13) 评论(1) 推荐(0) 编辑
摘要: 请你在树中找到一个点,使得该点到树中其他结点的最远距离最近。这个点被称为树的中心。 题解:https://www.cnblogs.com/dx123/p/17302104.html 评测:https://www.acwing.com/problem/content/1075/ 暴力做法是以每个点为根 阅读全文
posted @ 2023-12-05 22:00 potential-star 阅读(39) 评论(0) 推荐(1) 编辑
摘要: 树上任意两节点之间最长的简单路径即为树的「直径」。 树形 DP的做法 可以在存在负权边的情况下求解出树的直径。 const int N=10010,M=20010; int n,a,b,c,ans; struct edge{int v,w;}; vector<edge> e[N]; int dfs( 阅读全文
posted @ 2023-12-05 20:44 potential-star 阅读(53) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 下一页
点击右上角即可分享
微信分享提示