
图论
文章平均质量分 93
加油
在路上Ven
每天学习真逍遥
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
判断图是否有环的两种算法
求欧拉回路时首先需要判断它是否为一个连通的回路,下面有两种算法来判断。 dfs深搜 #include <iostream> #include <vector> #include <string.h> using namespace std; int sta[1200];//sta代表每个结点的状态,-1代表还没被访问,0代表正在被访问,1代表访问结束...原创 2019-07-26 10:18:55 · 4156 阅读 · 0 评论 -
并查集(注释详细,超容易理解)
我写的这个版本绝对是超容易理解的,(起码是我看到过最好理解的... /手动狗头)有任何疑问欢迎留言 #include<iostream> #define maxn 10000 using namespace std; int n,m; int cnt=0; //统计有几个集合 int f[maxn]; //记录每个人的上级 void init() { //初始化 ...原创 2019-07-25 21:10:41 · 501 阅读 · 0 评论 -
2019/7/22 匈牙利算法,KM算法
这几天知识点量太大,一时间不易吸收。先占个坑,慢慢填 匈牙利算法 分享一位博主Dark_Scope的思路,简单易懂还有趣,虽然是初学,也马马虎虎懂了个大概 https://blog.youkuaiyun.com/dark_scope/article/details/8880547 #define maxn 100000 int n,m;//n个男生 m个女生 二分图:男生在左女生在右...原创 2019-07-22 10:50:57 · 272 阅读 · 0 评论 -
ST表
首先需要了解: RMQ问题: 给定一个长度为N的区间,M个询问,每次询问Li到Ri这段区间元素的最大值/最小值。如果暴力找最大值,复杂度是o(n)。但如果查询多次,这个复杂度就很大了。 解决这个问题的方法是离线ST表和支持在线修改的线段树。 ST表与线段树相比,两者预处理复杂度同为O(nlogn),但是在查询时间上,ST表为O(1),线段树为O(nlogn) 定义...原创 2019-08-05 10:52:09 · 232 阅读 · 0 评论 -
Forsaken的三维数点
描述 Forsaken现在在一个三维空间中,空间中每个点都可以用 (x,y,z)(x,y,z)(x,y,z) 表示。突然,三维空间的主人出现了,如果Forsaken想要继续在三维空间中呆下去,他就必须回答三维空间主人的问题。 主人会在空间中坐标为 (x,y,z)(x,y,z)(x,y,z) 处加一点能量值,当他加了一定的次数之后,他会问Forsaken一个问题:如果坐标 ...原创 2019-11-15 15:48:59 · 330 阅读 · 0 评论 -
POJ 2352 Starts & POJ 2418 Cows
两道相似的题,都可以转化为求一个点的某个方位(左上,左下,右上,右下)有多少个点,求和 POJ 2352 Starts Astronomers often examine star maps where stars are represented by points on a plane and each star has Cartesian coordinates. Le...原创 2019-08-25 16:21:05 · 233 阅读 · 0 评论 -
POJ - 1990 MooFest
Every year, Farmer John's N (1 <= N <= 20,000) cows attend "MooFest",a social gathering of cows from around the world. MooFest involves a variety of events including haybale stacking, fence jump...原创 2019-08-24 10:41:14 · 234 阅读 · 0 评论 -
树状数组错题总结
题目链接 HDU - 1166 敌兵布阵(模板题) C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但...原创 2019-07-30 15:51:21 · 295 阅读 · 2 评论 -
树状数组知识点总结
树状数组也挺友好,感人++。跟着学长的ppt再加着看了大量有关这方面的博客,总算把这块搞得差不多了,我的目标就是写一篇所有像我一样的小白能看懂的博客,所以大家请放心食用,都是一些很好理解的内容 首先,我们需要知道的,什么是树状数组,树状数组的作用是什么?带着这两个问题,我们就可以进入下一个阶段了。 树状数组: 此内容部分参考此篇博客所总结 https://blog....原创 2019-07-30 15:36:29 · 296 阅读 · 0 评论 -
vector数组存图
模板: vector<int> g[maxn]; void init() { for(int i=0;i<maxn;i++) g[i].clear(); } for(int i=1;i<n;i++) { cin >> u >> v; g[u].push_back(v); g[v].push_back(u); } ...原创 2019-08-10 12:44:30 · 1600 阅读 · 4 评论 -
链式向前星(数组模拟邻接表)
有关树的经常需要存图,vector数组比较方便,不过有些题卡stl,就很容易T。所以链式向前星就非常重要了。 这几天能不用链式向前星就不用,因为不会用...这当然是不可取的。想起来初中老班的一句话,出来混迟早是要还的,所以问题不解决迟早是要栽坑的。昨天遇见dfs序时不太会模拟,因为对出栈的点的顺序理解的不是很通透,全套板子。一步一步稳着来,zkw冲呀 含义: ...原创 2019-08-10 12:39:04 · 1426 阅读 · 6 评论 -
2019/7/23 网络流的三种算法 FF、EK、Dinic算法
我们要解决网络流里的一种常见问题——最大流问题。 (这是第一天自己看了很多博客总结出来的,有时候写字比打字的思路更清晰。当然这只是一个推导过程,通常我们解决最大流问题要用到Dinic算法,要问我为啥?它的时间复杂度低,到时候提交题一遍过不好嘛,省得又T了还得改T_T)最大流的三种解题方法,FF算法,EK算法,Dinic算法,它们的时间复杂度相差十分大。第一天看这些东西的时候真的...原创 2019-07-23 13:30:56 · 934 阅读 · 1 评论 -
拓扑排序
这几天饱受数论图论算法的摧残,拓扑相对于其他算法,算是很友好的了。感人 拓扑排序:在一个有向图中,对所有的节点进行排序,要求没有一个节点指向它前面的节点。 定义:1.每个顶点只出现一次; 2.存在顶点A到顶点B的路径,则A出现在B的前面。 方法:先统计所有节点的入度,把入度为0的点分离,然后把这个节点指向的节点入度减1. 先放模板 #include<iostream...原创 2019-07-25 16:23:24 · 179 阅读 · 1 评论