图论
YuckXi
这个作者很懒,什么都没留下…
展开
-
网络连接
网络连接DescriptionBob是一个网络管理员,负责监控计算机网络。他要维护网络内计算机之间的连接的日志。每个连接是双向的。如果两台计算机是直接连接的,或者与同一台计算机互联,则我们称这两台计算机是互联的。有的时候,需要Bob根据日志信息作出判断,确定给出的两台计算机是否直接或间接地互联。请基于输入信...原创 2019-05-24 21:59:38 · 478 阅读 · 0 评论 -
割点(割顶)
#include<iostream>#include<vector>#include<stack>#include<cstring>#include<cstdio>using namespace std;#define N 100010vector<int>l[N],g[N];int n,m,x,y;int...原创 2019-06-10 13:11:49 · 135 阅读 · 0 评论 -
缩点
#include<iostream>#include<vector>#include<stack>#include<cstring>#include<cstdio>using namespace std;#define N 100010vector<int>l[N],g[N];int n,m,x,y;int...原创 2019-06-10 13:10:28 · 131 阅读 · 0 评论 -
最小费用最大流
#include<iostream>#include<queue>#include<cstring>using namespace std;#define N 512#define inf 0x7fffffffint n,m,x,y,ca,c;struct maxFlowMinCost{ int cap[N][N],cost[N][N]; i...原创 2019-06-14 21:41:40 · 195 阅读 · 0 评论 -
最大流
#include<iostream>#include<cstring>#include<queue>using namespace std;#define N 50001#define M 500001int n,m,x,y,cap;struct dinic{ struct graph{ int tot,head[M];...原创 2019-06-14 21:40:00 · 121 阅读 · 0 评论 -
链式前向星
#include<iostream>using namespace std;#define N 20001#define M 30001struct graph{ int tot,head[M]; struct edge{ int next; int to,dis; }ed[M]; void addEdge(int from,int to,int dis){...原创 2019-06-14 19:39:10 · 129 阅读 · 0 评论 -
[十二省联考2019]春节十二响
[十二省联考2019]春节十二响Description题目背景「清明时节雨纷纷,路上行人欲断魂。」 2075 年的清明没有春雨。在漫天飞雪的笼罩下,穿行在冰原间的,只有载着人类微薄希望的雪地车。 遥遥 4.22 光年的征途,对于地球这孤独的旅人而言,恐怕也是无比寂寞的吧。题目描述距离苏拉威西只有一百公里了...原创 2019-06-19 12:59:12 · 246 阅读 · 0 评论 -
拓扑排序
#include<iostream>#include<queue>#include<vector>#include<cstring>using namespace std;int n,m,x,y,in[30001];priority_queue<int>q,*pq;queue<int>ans;vector&l...原创 2019-06-14 13:24:11 · 115 阅读 · 0 评论 -
Dijkstra
#include<iostream>#include<vector>#include<queue>#include<cstring>#include<cstdio>using namespace std;#define N 100001struct Edge{ int y,w;};struct Node{ ...原创 2019-05-31 20:59:05 · 699 阅读 · 0 评论 -
SPFA
#include<iostream>#include<vector>#include<queue>#include<cstring>using namespace std;#define N 100001struct Edge{ int y,w;};vector<Edge>l[N];queue<int&g...原创 2019-05-31 20:58:17 · 100 阅读 · 0 评论 -
最小生成树
#include<iostream>#include<algorithm>using namespace std;#define N 400010int n,m,x,y,w,tot,sum;struct Edge{ int x,y,w;}e[N];bool cmp(Edge a,Edge b){ return a.w<b.w;}st...原创 2019-05-31 20:57:39 · 128 阅读 · 0 评论 -
P2661 信息传递
信息传递Description 有n个同学(编号为1到n)正在玩一个信息传递的游戏。在游戏里每人都有一个固定的信息传递对象,其中,编号为的同学的信息传递对象是编号为的同学。游戏开始时,每人都只知道自己的生日。之后每一轮中,所有人会同时将自己当前所知的生日信息告诉各自的...原创 2019-05-31 20:53:52 · 133 阅读 · 0 评论 -
带权并查集
#include<iostream>#include<cmath>using namespace std;#define N 30001struct union_Find_Sets{ int fa[N],siz[N],dis[N]; int findFa(int v){ if(fa[v]!=v){ int f...原创 2019-05-28 18:16:30 · 125 阅读 · 0 评论 -
树环转换
树环转换Description 给定一棵N个节点的树,去掉这棵树的一条边需要消耗值1,为这个图的两个点加上一条边也需要消耗值1。树的节点编号从1开始。在这个问题中,你需要使用最小的消耗值(加边和删边操作)将这棵树转化为环,不允许有重边。环的定义如下:(1)该图有N个点,N条边。(...原创 2019-06-05 13:15:20 · 400 阅读 · 0 评论 -
tajan
#include<iostream>#include<vector>#include<stack>#include<cstring>#include<cstdio>using namespace std;#define N 100010vector<int>l[N];int n,m,x,y;int dfn[...原创 2019-06-05 13:08:27 · 140 阅读 · 0 评论 -
树链剖分
#include<iostream>#include<cstdio>#include<cstring>#include<vector>using namespace std;namespace SLPF{ #define N 100001 int dep[N],fa[N],son[N],id[N],size[N],cost[N],to...原创 2019-05-13 13:52:40 · 100 阅读 · 0 评论 -
差分约束系统
#include<iostream>#include<cstring>#include<queue>using namespace std;#define N 1010#define M 100010struct graph{ int tot,head[M]; struct edge{ int next; int to,dis; }e...原创 2019-06-21 18:42:48 · 152 阅读 · 0 评论