- 博客(2121)
- 收藏
- 关注

原创 数论&&组合数学_模板
1.素数区间筛void init(){ tot=0; memset(Is_or,0,sizeof(Is_or)); for(ll i=2;i<=Maxn;i++) { if(Is_or[i]==0) { prime[tot++]=i; for(ll j=i+i;j<=Max
2017-08-11 22:17:04
800

原创 个人模板记录II♪(^∇^*)♪(^∇^*)♪(^∇^*)
1、树的重心#include#include#includeusing namespace std;#define ll __int64struct node{ int from; int to; int w; int next;}e[1500000];int n;int root;int minn;int cont;ll output;
2017-01-03 16:42:56
1532

原创 Codeforces题解整合【按照场次】
本贴只给出传送门,用于整合。本帖只会给出整场全部题的题解。没有做出来全部题的场次的题解不进行记录。也算用于给自己一种补题的督促动力吧。Codeforces Round #383 (Div. 2)【A.B.C.D.E】:http://blog.youkuaiyun.com/mengxiang000000/article/details/53503168http://blo
2016-12-19 14:27:38
2564

原创 浅谈-二分查找
一、什么是二分查找?1、我们首先引入这样一个问题:如果规定某一科目成绩分数范围:[0,100],现在小明知道自己的成绩,他让你猜他的成绩,如果猜的高了或者低了都会告诉你,用最少的次数猜出他的成绩,你会如何设定方案?(排除运气成分和你对小明平时成绩的了解程度)①最笨的方法当然就是从0开始猜,一直猜到100分,考虑这样来猜的最少次数:1(运气嘎嘎好),100(运气嘎嘎背);②其实在我们根本
2016-10-07 20:54:13
21822
1

原创 Hrbust 题目列表【700题】-个人整理
1000、【新手】A+B1001、【新手】水题1002、【新手】水题1003、【新手】水题1004、【入门】数塔dp1005、【思维】序列定和1006、【进阶】二分查找、好题1007、【新手】A-B1008、【新手】水题1009、【新手】水题1010、【新手】水题1011、【新手】水题1012、【入门】广搜1015、【新手】水题1017、【新
2016-08-20 17:05:22
5356
1

原创 强连通算法--Tarjan个人理解+详解
首先我们引入定义:1、有向图G中,以顶点v为起点的弧的数目称为v的出度,记做deg+(v);以顶点v为终点的弧的数目称为v的入度,记做deg-(v)。2、如果在有向图G中,有一条有向道路,则v称为u可达的,或者说,从u可达v。
2016-06-14 17:31:12
28511
27

原创 个人模板记录♪(^∇^*)♪(^∇^*)♪(^∇^*)
1、KMPint next[2005];int lena;int lenb;void set_naxt()//子串的next数组{ int i=0,j=-1; next[0]=-1; while(i<lenb) { if(j==-1||b[i]==b[j]) { i++; j++;
2016-05-07 15:26:24
1196

原创 朱、刘算法:求最小树形图权值个人理解+个人详解【最小树形图模板】
什么是最小树形图?相信大家如果会过来看这篇文章,想必也应该对最小生成树有所了解的,最小生成树求的是无向图的一颗生成树的最小权值。我们的最小树形图就是来解决一个有向图的一颗生成树的最小权值,对于度娘来说,最小树形图是这样定义的:最小树形图,就是给有向带权图中指定一个特殊的点root,求一棵以root为根的有向生成树T,并且T中所有边的总权值最小。通解最小树形图的一种算法是是1965年朱永津和刘振
2016-04-28 19:17:39
5822
1

转载 大数模板
捡自http://blog.youkuaiyun.com/zz_1215/article/details/6716132#include #include using namespace std; #define DIGIT 4 //四位隔开,即万进制 #define DEPTH 10000 //万进制 #define MAX
2016-04-17 18:56:08
878

原创 Floyd-Warshall算法+拓展详解+算法相关问题、
Floyd-Warshall算法+拓展详解一、简单介绍一下Floyd算法Floyd算法又称为插点法,是一种用于寻找给定的加权图中多源点之间最短路径的算法。该算法名称以创始人之一、1978年图灵奖获得者、斯坦福大学计算机科学系教授罗伯特·弗洛伊德命名。优点:1、多源点、是一种动态规划算法,稠密图效果最佳,边权可正可负。2、拓展应用范围广、好理解、代码简洁。缺点:1、效
2016-02-26 17:59:41
1751

原创 输入外挂~模板记录
#include#includeusing namespace std;int Scan(){ int res = 0, ch, flag = 0; if((ch = getchar()) == '-') //判断正负 flag = 1; else if(ch >= '0' && ch <= '9') //得到完整的数 res = ch - '0'; whil
2016-02-01 14:43:30
947

原创 最大流问题:最大流的Ford-Fulkerson算法
这里初学,总结出一些知识点,这里于大家共享。引入问题:现在想将一些物资从S运到T,必须经过一些中转站。连接中转站的是一些单向公路,每条公路都有最大运载量。最多能将多少货物从S运到T?建图:V表示整个图中节点的集合E表示整个图中所有边的集合G = (V, E)表示整个图对于每条边(u, v), 有一个容量c(u, v)表示每条公路的最大运载量 c(u, v) ≥ 0
2016-01-28 16:16:12
2451

原创 KMP算法:KMP算法个人理解+next数组细节处理的方法
一.KMP算法,是三位先辈的心血完成的一个匹配算法,堪称完美的算法。其中包含着很多有趣的细节。(我们这里不啰嗦各种各样的理论,我们为的就是理解算法。)所谓KMP算法,就是说现在给我们两个字符串,让我们来完成匹配(匹配==一一对应)假设这里给我们两个字符串分别为:abcxefabcd(S)abcd(P)这里显而易见,在S串的末尾部分就能和P串一一对应,也就是说能匹配上,用朴素
2016-01-17 16:28:08
1988
1

原创 最大二分匹配算法详解(匈牙利)
二分图匹配,江湖称二分匹配,图论相关算法。现在给出两个集合,我们拿约会来举例子。一方是男生集合,一方是女生集合,女生都比较内敛,对不认识的男孩纸并不喜欢一起约会,所以这里边就要有人际关系的问题了。这里给男生编号n1,n2.....nn;女生编号v1v2....vn;下面给出女生认识的男生的列表:v1 :n1 ,n2. v2 :n2, n3.v3 : n1.这里显而易见,
2016-01-01 15:05:45
1540

原创 最短路dijkstra算法详解:dijkstra(图解)(详
本人小白,如果有写的不恰当的地方,还请大家指出,共同进步学习。-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
2015-12-28 20:23:00
91607
18
原创 Wannafly挑战赛3 C.位数差【思维+离散化+二分+树状数组】
题目描述给一个数组{a},定义 h(a,b)为在十进制下 a + b 与 a 的位数差,求 ,0的位数为1。输入描述:第一行读入一个正整数 n (1 5)。第二行读入 n 个非负整数,第 i 个表示a[i] (0 8)。输出描述:一行表示答案。示例1输入100 1 2 3 4 5 6 7 8 9
2017-12-01 18:16:33
1262
1
原创 Wannafly挑战赛2 B.Travel【思维+SPFA】
题目描述精灵王国有N座美丽的城市,它们以一个环形排列在Bzeroth的大陆上。其中第i座城市到第i+1座城市花费的时间为d[i]。特别地,第N座城市到第1座城市花费的时间为d[N]。这些道路都是双向的。另外,精灵们在数千年的时间里建造了M座传送门,第i座传送门连接了城市u[i]与城市v[i],并且需要花费w[i]的时间通过(可能有两座传送门连接了同一对城市,也有可能一座传送
2017-11-30 18:04:24
1090
原创 Zoj 3981 Balloon Robot【思维】
Balloon RobotTime Limit: 1 Second Memory Limit: 65536 KBThe 2017 China Collegiate Programming Contest Qinhuangdao Site is coming! There will be teams participating in the contest, an
2017-11-02 09:41:12
1160
原创 Dp&&背包_模板
1.多重背包void zoreonepack(int val,int cost){ for(int i=v;i>=cost;i--) { if(dp[i-cost]+val>dp[i]) { dp[i]=dp[i-cost]+val; } }}void completepack(int val
2017-10-31 13:55:18
763
原创 基础数据结构_模板
1.树状数组int tree[100005];//树int lowbit(int x)//lowbit{ return x&(-x);}int sum(int x)//求和求的是比当前数小的数字之和,至于这里如何实现,很简单:int sum=sum(a[i]);{ int sum=0; while(x>0) { sum+=tre
2017-10-31 13:26:33
721
原创 图论_模板
1.Primvoid prim(){ int i,j,k,min; for(i=2;i<=n;i++) dis[i]=map[1][i]; vis[1]=1; for(i=2;i<=n;i++)//经过N次遍历一定能遍历所有的点 也就是完成了最终目标. { min=inf; for(j=1;j<=n;j++) { if(vis[j]==0 &&dis[
2017-10-30 12:52:59
459
原创 Gym 101572E Emptying Baltic【优先队列+BFS】
题目大意:给出一个N*M的矩阵,然后在点(x,y)处设立一个抽水机,每个点有一个数代表海拔高度,负数就有水,水往低处流,问能够抽多少水。思路:直接Bfs一下即可,模拟拓展出去的过程。Ac代码:#include#include#includeusing namespace std;int a[505][505];int vis[5
2017-10-29 20:43:18
567
原创 Gym 101572 I.Import Spaghetti【Floyd最小环+输出路径】
题目大意:输出最小环的路径。思路:板子= =Ac代码:#include#include#include#include#includeusing namespace std;maps;mapre;int n;int path[605][605];int mp[605][605];int dist[605][605];
2017-10-28 17:45:57
691
原创 Gym 101572 K.Kayaking Trip【二分+贪心】
题目大意:一共有三种人,每种人的数量为b,n,c;其每一种人的力量值为sb,sn,sc;现在保证b+n+c是偶数,需要我们将这b+n+c个人分成(b+n+c)/2对,然后每对选手放到一个倍值为c【i】的船上,对应这艘的能力值为c【i】*(s1+s2);现在希望我们构造出来的方案中,船的最小能力值尽可能的大。思路:①首先答案有二分单调性,那么我们考虑二
2017-10-28 16:00:23
976
原创 Gym 101572D Distinctive Character【思维+Bfs】
题目大意:给出N个长度为K的01串,现在让我们构造出来一个长度为K的01串,使得这N个串和构造出来的串的最大相似度最小。相似度定义为两个字符串相等的位子的个数。思路:①因为长度并不大,而且N也不大 ,解题的时候总会想偏。②其实这个题我们只要一遍Bfs即可,设定Vis【i】表示二进制串在十进制表示下为数字i的字符串是否遍历到了。那么对于一个串1
2017-10-28 15:20:22
734
原创 Gym 101503I Just Matrix【思维+拓扑排序】好题~
、题目大意:给出两个矩阵,分别表示a【i】【j】这个位子的上边和左边分别有多少个位子上的数大于当前位子。让我们构造出来一个解,使得1~N^2排布在n*n的矩阵中,并且满足题目要求,如果没有满足要求的解,输出单个0.思路:①我们已知条件只有每个点其左边和上边有多少个点大于当前点。那么我们考虑去确定两点间的关系。②确定两点间关系无
2017-10-27 16:44:30
465
原创 Codeforces 879C Short Program【思维】
C. Short Programtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputPetya learned a new programming language C
2017-10-27 13:06:35
961
原创 Other_模板
1.Kmpint next[2005];int lena;int lenb;void set_naxt()//子串的next数组{ int i=0,j=-1; next[0]=-1; while(i<lenb) { if(j==-1||b[i]==b[j]) { i++; j++;
2017-10-26 13:59:49
406
原创 Codeforces 508E Arthur and Brackets【贪心】
E. Arthur and Bracketstime limit per test2 secondsmemory limit per test128 megabytesinputstandard inputoutputstandard outputNotice that the memory limit is non-
2017-10-26 13:55:28
507
原创 Codeforces 877D Olya and Energy Drinks【思维优化Bfs】
D. Olya and Energy Drinkstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputOlya loves energy drinks. She lov
2017-10-25 15:40:51
1265
原创 Codeforces 877E Danil and a Part-time Job【Dfs序+线段树】
E. Danil and a Part-time Jobtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputDanil decided to earn some mon
2017-10-25 15:38:28
698
原创 景驰无人驾驶 1024 编程邀请赛 A.热爱工作的蒜蒜【二维最短路】
众所周知,蒜蒜是一名热爱工作的好员工,他觉得时间就是金钱,做事情总是争分夺秒。这天晚上,蒜蒜一个人去吃晚饭。不巧的是,吃完饭以后就开始下雨了,蒜蒜并没有带雨伞出来。但是蒜蒜热爱工作,工作使他快乐,他要尽快赶回去写代码。蒜蒜的公司在中关村,中关村这边地形复杂,有很多天桥、地下通道和马路交错在一起。其中,地下通道是可以避雨的,天桥和马路都没办法避。可以把中关村抽象成为 nn 个点的地图(顶点编
2017-10-25 12:08:30
458
原创 Gym 101470J Stange Antennas【思维】
题目大意:给出一个n*n大小的矩阵,现在要进行a次操作,每次操作有四个元素:(x,y,p,dir),表示在(x,y)处 ,往dir方向上放置一个直角边长度为p的三角形。问覆盖位子为奇数次数的位子的个数。思路:①我们考虑将大问题分成若干个子问题这个问题就简单了。对应每一种操作,我们将其分成列上边的操作,相当于一个三角形变成若干个列的覆盖。②
2017-10-25 10:49:06
378
原创 Gym 101470A Banks【暴力】
题目大意:给出长度为N的一个序列,我们每一次操作可以使得一个数变成其相反数,然后使得两边的两个数减去合格数的绝对值。问最少多少步使得整个序列所有元素都是大于等于0的。思路:说粗来可能不信,但是这个题确实暴力模拟就能过。玄学复杂度。Ac代码:#include#includeusing namespace std;int a[1
2017-10-25 10:45:11
391
原创 Codeforces 591C Median Smoothing【思维】
C. Median Smoothingtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputA schoolboy named Vasya loves reading b
2017-10-23 18:20:44
364
原创 Codeforces 591D Chip 'n Dale Rescue Rangers【思维+二分】
D. Chip 'n Dale Rescue Rangerstime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputA team of furry rescue ranger
2017-10-23 18:16:31
369
原创 Codeforces 591E Three States【优先队列Bfs+思维】
E. Three Statestime limit per test5 secondsmemory limit per test512 megabytesinputstandard inputoutputstandard outputThe famous global economic crisis is approa
2017-10-23 18:11:32
376
原创 51Nod 1158 全是1的最大子矩阵【单调栈】
1158 全是1的最大子矩阵基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注给出1个M*N的矩阵M1,里面的元素只有0或1,找出M1的一个子矩阵M2,M2中的元素只有1,并且M2的面积是最大的。输出M2的面积。Input第1行:2个数m,n中间用空格分隔(2 <
2017-10-23 15:36:15
449
原创 Hrbust 2302 Another Tree【思维+Dfs】
Another TreeTime Limit: 1000 MSMemory Limit: 32768 KTotal Submit: 46(17 users)Total Accepted: 17(15 users)Rating: Special Judge: NoDescription
2017-10-20 16:49:18
346
原创 Codeforces 296C Greg and Array【思维】
C. Greg and Arraytime limit per test1.5 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputGreg has an array a = a1, a2, ..., an a
2017-10-20 15:50:37
587
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人