自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 【网络流】EK算法及其优化

今天上午我仿佛知道了什么叫做网络流,这里推荐一篇博客,大家入门网络流的可以看一下这篇博客,保证一看就懂!博客链接: 网络流入门这里有一篇经过我改过的EK带注释代码(博客里也有一样的,只是加了一些注释),大家可以看一下://codevs 1993#include<cstdio>#include<cstring>#include<algorithm...

2018-02-28 16:55:32 525

原创 异或运算(相同为0,不同为1)

转进制计算器先输入一个十进制数,再输入要转换的进制······ #include<cstdio> #include<cstring> using namespace std; int shi,zh,yu,u=-1,lench; char ch[1000000]; int main() { s...

2018-02-27 23:48:34 23453

原创 关于一个小小的骚操作(大佬忽略)

关于一个骚知识的个人代码实现题目戳这里:1554梦中的统计代码如下:* _请重视njc函数_ * #include<cstdio> #include<cstring> using namespace std; int N[15]; int n,m; int po(int j) { ...

2018-02-27 23:48:02 645

原创 求最大公约数

这个东西需要用到数学上的辗转相除法,这里就不在赘述,辗转相除法详见百度百科和代码中的njc函数。题目链接: 求最大公约数问题下面代码:#include<cstdio>#include<cstring>using namespace std;int njc(int a,int b){ if(a%b==0) return b; retu...

2018-02-27 23:47:07 154

原创 STL中那些好用的东西!(持续更新)

一、数据结构部分1、set&map(后续持续更新)2、queue(priority_queue)queue<int> a; //定义 a.push(i); //压入 a.pop(); //弹出 a.size(); //取大小 a.front(); //访问队首元素 a.back(); ...

2018-02-27 23:46:35 453

原创 题解 P1197 【[JSOI2008]星球大战】

链接戳这里☞星球大战 #include<cstdio> #include<cstring> #include<vector> #include<queue> using namespace std; int mp[400001][3]; vector<int> q; ...

2018-02-27 23:45:50 215

原创 线段树1对于Pushdown的理解

线段树1对于Pushdown的理解线段树1是一个区间修改和区间求值的题,他相当于以前的线段树——区间求值和单点修改和区间修改和单点求值,产生了本质上的一些区别,最主要的就在于Pushdown上的区别,现在我们就来区分一下。1、线段树练习——单点修改和区间求值这个主要考察的就是线段树最主要的三个步骤 建树(Buildtree) 修改(modify) 查询(query)本题难度不大...

2018-02-27 23:44:59 3588

原创 最短路问题之SPFA

P3371 【模板】单源最短路径 题解这是一道蛋蛋的题,我用SPFA干掉了他,可是又因为老毛病if没打两个等号,这道题又成功的耗费了我20分钟!下面上源代码(内有注释): //SPFA #include<cstdio> #include<cstring> #include<vector> #include...

2018-02-27 23:44:27 167

原创 初识单调栈

P2866 [USACO06NOV]糟糕的一天Bad Hair Day首先让我们了解一下,对于本题单调栈的一个操作思路。没看题的戳这里→题目。先定义一个栈,然后我们遵循一个原则,我们先从头开始把奶牛的身高压入栈,(一定要记住是从前往后看)第一头直接压,不管,前面的看一下后面有没有比他高的,如果暂时没有就top- -(top是记录他*被*看的次数);直到有的时候,那么就把他top++...

2018-02-27 23:43:45 123

原创 初识单调队列

P1886 滑动窗口这道题是一道单调队列的基本练习,因为时间缘故,我就不再这里多说了,看到有一篇很好的题解在这里*转载*一下,讲得非常的详细,相信大家认真看一下,也是可以看懂的。单调队列有两个性质队列中的元素其对应在原来的列表中的顺序必须是单调递增的。队列中元素的大小必须是单调递*(增/减/甚至是自定义也可以)单调队列与普通队列不一样的地方就在于单调队列既可以从队首出队...

2018-02-27 23:43:06 134

原创 打表拿省一!!!

下面来上一道传奇的普及-高性能题目, 回文质数 我第一次做这道题的时候,因为没有看到他的数据范围成功的没有看见他的数据范围限制,于是成功TLE了! 下面是我的第一次代码:#include<cstdio>#include<cstring>using namespace std;long long a,b;bool njc(int n){ fo...

2018-02-27 23:42:20 2487 2

原创 博弈论初步

这是一道关于博弈的问题,希望以后考试中不会遇见: 题目: P1290 欧几里德的游戏下面直接上代码: #include<bits/stdc++.h> using namespace std; typedef long long ll; int main() { ll c; cin>>c; ...

2018-02-27 23:41:15 183

原创 初识AOV拓扑排序

首先先引入一段概念:AOV网:在一个表示工程的有向图中,用顶点表示活动,用弧表示活动之间的优先关系。这样的有向图为顶点表示活动的网,我们称为AOV网(Activity On Vertex Network)。程序设计语言(以C语言为例)中定义为:在一个有向图中,若用顶点代表活动,边代表活动间先后关系,称该有向图为顶点活动网,简称AOV网。在AOV网中,若从顶点i到顶点j之间存在一条有...

2018-02-27 23:40:33 427

原创 开车,开车!!!

倍增问题其实说实话,我现在也不知道倍增问题是什么东西!题目链接: P1081 开车旅行标成如下:#include<bits/stdc++.h>#define LL long long #define N 100005 //小A开山蹦蹦,小B很正常 0是B 1是A using namespace std;struct sd{ int ...

2018-02-27 23:39:46 285

原创 快速幂

我觉得这个东西还是比较简单的,为什么考试的时候没有打出来我也不知道,再次奠基一下我那凉掉的考试。 这里是一个简单的快速幂算法,求2的n次方的。这里在放一道例题: P1226 取余运算||快速幂下面是源代码:#include<cstdio>using namespace std;int n;long long search(int n){ //if(...

2018-02-27 23:38:55 208

原创 【解题报告】 垃圾陷阱

这道题是一道非常典型的DP,下面我们就来对这道题进行一些讲解!题目链接: P1156 垃圾陷阱作为一道“提高+/省选-”的题目,相信这道题还是很有价值的,本题的价值就在“时间”这个限制变量上,这个变量要是没有看出来,那么这道题想要AC确实就有一点困难了!!!解题方法:本题鄙人用的是滚动数组的办法,很偷懒,有一点耍小聪明的感觉,但是这种方法却也是最好的!如果你还没有看通“...

2018-02-27 23:38:20 283

原创 Andrew算法(我确实不懂Graham)

先解释一下:这两个算法分别都是凸包问题的算法,然后Andrew是Graham的变种,速度更快,更稳定,非常优秀,介于我已经把Graham写的莫名其妙的WA了,所以我选择了这种算法!我认为在这里,还是有必要向大家在这里先普及一下什么是凸包:计算几何凸包凸包:给你n个散落的点,让你求出最小的凸多边形将所有的点包括起来,或者点在边上。用到的算法是Graham或Andrew!这里给...

2018-02-27 23:37:18 1727

原创 【解题报告】P1282 多米诺骨牌

这是一道非常经典的动态规划题目······我们首先来对它来进行分析,我们首先发现他应该是用一个二维背包来解决的问题。二维背包第一个维度存储多米诺骨牌序号i,第二维度存储前i个多米诺骨牌第一行的权值,最后每个变量的值表示的是要操作的次数。于是动归方程式如下: if(j-x1[i]>=0) bag[i][j]=min(bag[i-1][j-x1[i]],bag[i]...

2018-02-27 23:36:10 385

原创 【解题报告】01背包

这应该是最基础的背包问题了,但正因为他的基础,他的思想会被用在很多DP题中,所以这里有必要对他剖析一下。我们应该掌握的方法有两种1、二维数组。2、滚动数组。后面那个一看就要高级一些,但是确实对动归没有太大的帮助,所以大家一定要把第一种方法学好!第二种方法我不做解释,只会黏贴代码,大家认真脑补一下应该也是可以理解的。题目链接: 01背包问题二维数组法:这里定义背包叫...

2018-02-27 23:35:14 170

原创 【解题报告】关路灯

这道题我并没有完全理解他那个蛋疼的循环是什么意思,这里只有粘一篇写的特别棒的题解了:下面内容为转载内容:这是一道区间型的动态规划题;我主要是对前方的一些dp题解补充一些小细节。既然是动规,那么首先讲一下常用的填表法和刷表法:填表法就是利用状态转移方程和上一个状态来推导出现在的状态(相当于知道已知条件,将答案填入)刷表法就是利用当前的状态,把有关联的下一状态都推出来。...

2018-02-27 23:34:23 746 2

原创 线段树Coding Caution

线段树注意事项1、是int的函数,递归调用得时候一定要记得写return。2、线段树一定要记住Buildtree。3、线段树左右节点不要打反了。4、查询(query)一定记得要用long long。5、结构体中sum一类的变量要开成long long。6、不要把return 0写到for循环里面。7、注意儿子的下标要一致。8、有乘法运算的初始化pass=1。后续...

2018-02-27 23:33:20 113

原创 线段树2对于Pushdown的理解

关于“线段树2”~3373最近才把这玩意儿搞出来,代码和解说如下: #include<cstdio> #include<cstring> using namespace std; const int N=100005; struct sd{ int son[2],l,r; long long ...

2018-02-27 23:32:16 1107 1

原创 基数排序

二话不说,先上代码: 接下来将重点解释有important注释的地方:#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int N=1000005;long long origin[N],final[N],last[N];//原始数组,当...

2018-02-27 23:31:30 146

原创 分组背包(YBT 1272)

终于从数据结构的魔圈中走出来啦!!!,今天我终于要写一篇关于 动态规划的题目啦,哈哈哈! 没看过题目的请戳这里☞ 分组背包 先不说什么,直接上代码(代码中有变量解释):#include<cstdio>#include<cstring>#include<vector>using namespace std;struct sd{//结构体 ...

2018-02-27 23:30:30 324

原创 有依赖的背包问题

这里有一道非常典型的题目: 链接戳这里☞:P1064金明的预算方案 下面是源代码:#include<cstdio>#include<cstring>#include<vector>#include<iostream>using namespace std;struct sd{ int weight,value; ...

2018-02-27 23:29:44 1760

原创 扩展欧几里德算法(gcd扩展使用)

首先让我们先来普及一下,关于gcd的知识,这里几个字就可以搞定,gcd(a,b)就是指a,b的最大公约数,我靠,你可能会说这个有什么用呢?不要着急,我们马上就会进行讲解:首先先来普及一些基本概念:首先他们必须满足贝祖等式(好高大上的名字啊!): ax+by = gcd(a, b)。于是由这个定理,我们成功推出了:(说实话我TM也没有听懂是怎么推的,呵呵!)所以,我们由gcd函数...

2018-02-27 23:29:03 325

原创 Splay源代码(营业额统计 2234)

#pragma GCC optimize(2) #include<bits/stdc++.h> using namespace std; int n,L=1,R=0,ans,root=1,cnt=1,minn,maxx; struct tree{ int son[2];int num;...

2018-02-27 23:27:30 167

原创 Dijsktra priority!

/* Dijkstra的算法思想:在所有没有访问过的结点中选出dis(s,x)值最小的x对从x出发的所有边(x,y),更新dis(s,y)=min(dis(s,y),dis(s,x)+dis(x,y))*/下面是热浪的题解:#include<cstdio>#include<cstring>#include<algorithm&gt...

2018-02-27 23:24:54 137

原创 银河英雄传说(并查集操作)

并查集经典题目P1196 [NOI2002]银河英雄传说链接戳这里☞银河英雄传说先不说什么,直接上代码吧! #include<cstdio> #include<cstring> #include<vector> #include<queue> using namespace std; ...

2018-02-27 23:23:11 696 1

原创 图的遍历

感觉自己好久不做这类题,脑子都有点抽了!这里放一道很有意思的题:链接戳这里☞一笔画问题下面是代码和详细注释:有兴趣的可以看一下! #include<cstdio> #include<cstring> #include<cstdlib> using namespace std; bool mp[1505...

2018-02-27 23:21:50 141

转载 Manacher(回文算法代码及其详解)

郑重声明:本篇为转载,原篇见下面链接链接:Manacher算法由于回文分为偶回文(比如 bccb)和奇回文(比如 bcacb),而在处理奇偶问题上会比较繁琐,所以这里我们使用一个技巧,在字符间插入一个字符(前提这个字符未出现在串里)。举个例子:s=”abbahopxpo”,转换为s_new=”#a#b#b#a#h#o#p#x#p#o#”(这里的字符#a#b#b#a#h#o#p#x#p#o#...

2018-02-27 23:20:44 832

原创 【Noip2017】D2T1奶酪(cheese)

我终于把这道题给干掉了,介于这道题实在太皮,我这里详细讲解一下。首先我对我的方法感到有些神奇,我一来就选择了并查集方法,我也不知道为什么,反正我现在想起来我也觉得当时非常的瓜,因为并查集这个东西听他们说很容易被卡,于是我就与这道题苦战了将近一个多月,今天早上终于把他A了。下面我们来提一下本题的注意事项:注意事项:1、一定要sort一下,否则要被卡。2、一定要做好强制转化(l...

2018-02-27 23:18:53 385

原创 记忆化搜索

题目:任意输入一个数n(0题目分析:这个题我们可以用记忆化搜索的方法A掉,下面引用百度的一点东西,让我们大概了解一下这是什么东西: * _记忆化搜索_ (Memory search)心理学是指搜索信息的流程,但是搜索到的一些解用动态规划的那种思想和模式作一些保存。* 说简单一点就是,我们可以记录一下我们以前搜索过的信息,这样以后就不用重复的递归,来找取答案了,相信大家都应该已经懂了...

2018-02-27 23:17:46 291

原创 【Dijsktra priority!】分层图

这里先直接上一个题解,下午应该会有自己的打法!/*首先看一个问题:在你的强力援助下,PCY 成功完成了之前的所有任务,他觉得,现在正是出去浪的大好时光。于是,他来到高速公路上,找到一辆摩的前往几千公里以外他心仪的那家黄焖鸡米饭。由于 PCY 的品味异于常人,途经几百个城市的黄焖鸡米饭他都不屑一顾,他只愿意前往他心中最好的那家,但是为了一碗二十块钱的黄焖鸡米饭,他不愿意花上几千块的路费...

2018-02-27 23:16:28 427

原创 Spaly详解

P2234 [HNOI2002]营业额统计链接戳这里☞营业额统计上代码(附有注释): #include<bits/stdc++.h> using namespace std; struct sd { int value;//当前节点所储存的值 int son[2];//左右儿子 int...

2018-02-27 23:08:31 1861

原创 【Noip2017】D1T1小凯的疑惑

本题全卷最简单,可是蒟蒻的我在考场上并没有推出正确的解法,这里链接两篇写的很好的题解,来奠基一下我已经凉的Noip2017,同样也是对知识的扩展。题解链接1: 小凯的疑惑FIRST题解链接2: 小凯的疑惑SECOND本人AC代码:#include<cstdio>#include<cstring>using namespace std;long ...

2018-02-27 22:42:13 214

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除