摘要: 不得不说线段树的问题代码真太长。。。。。。 这个问题大意刚开始给出一个区间内的数,要么是0要么是1; 然后有如下操作: 0 i j:把区间i到j内的数全部变成0 1 i j:把区间i到j内的数全部变成1 2 i j:把区间i到j内的数0变成1,1变成0 3 i j:把区间i到j内的所有的1求出来 4 阅读全文
posted @ 2016-10-22 21:09 十禾。 阅读(151) 评论(0) 推荐(0) 编辑
摘要: n*m的格子上画了l条水平或者竖直的直线,求这些线将这些格子化成了多少区域。 具体的数据范围看挑战程序设计竞赛这本书,这个题目的数据范围比较大,所以的话需要将坐标离散化。作用就是将区间的大小变小而且不影响数据的结果。 可是这本书给的数据太坑,根本没有起到离散化的作用。。。。 阅读全文
posted @ 2016-10-15 21:40 十禾。 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 1.欧几里德算法(辗转相除法) 作用:求两个数的最大公约数。 设两个数为a,b(a>=b),则a,b的最大公约数为gcd(a,b),我先给出代码,然后解释。 给个浅显易懂的解释,这个解释是在百度上找到的(咳咳,虽然经常黑百度,但是有时候还是很有用的、、) 给出一个长为542,宽为114的长方形,先截 阅读全文
posted @ 2016-10-07 17:30 十禾。 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 昨天看图论的时候找到了这么个题目,刚开始不知道查分约束是什么东西,后来在网上学了一下,知道就是求图的最短路径额。。。。。这东西需要好好看看了。 再看这个题目,题意就是给出两点的最大差值,求出1到n的最大差值,刚开始用的一般的方法这个问题超时了,所以用的优先队列,最后ac了。。。(简简单单两行字,这里 阅读全文
posted @ 2016-10-06 10:10 十禾。 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 这个题目做的时候知道是最小生成树,用的kruskal算法,结果在并查集的地方出问题了。 刚开始的same函数弄得不对,,,还好,这个题目算是又复习了一下并查集 阅读全文
posted @ 2016-10-04 19:39 十禾。 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 昨天在看书的时候,突然看到二叉查找树的删除,以前学过,不过学的不仔细,结果研究了一晚上,才把二叉树的删除操作给整出来。 唉,以后看书要仔细啊。。。。。 先说一下如何删除二叉树查找树的节点吧。总共有三种情况 1.被删除的节点是叶子节点,这时候只要把这个节点删除,再把指向这个节点的父节点指针置为空就行 阅读全文
posted @ 2016-09-25 11:18 十禾。 阅读(889) 评论(0) 推荐(0) 编辑
摘要: 今天看的关键路径,总结一下学的关键路径。 一,什么是关键路径 把开始顶点到完成顶点的最长路径称为关键路径。 二,如何求关键路径 (首先先说明,作为一个有关键路径的图,图中的每条边带有权值,这些权值假设为活动持续的时间,顶点表示一个活动的开始或者结束这样一个事件)。 1,作为一个关键路径,需要用到的第 阅读全文
posted @ 2016-09-14 16:55 十禾。 阅读(724) 评论(0) 推荐(0) 编辑
摘要: 昨天开始学的拓补排序,自己总结了一下拓补排序算法的思路。 1.首先构造一个能够存储图的数据类型,能把边之间的关系存起来。 2.找到这些边的初始入度为0的顶点,将这些顶点存到一个数组当中,我看的这个书当中把这些点存入一个像栈一样的数组,初始化完成之后用这个数组中的顶点和跟他相关联的顶点的入度减去1. 阅读全文
posted @ 2016-09-13 17:43 十禾。 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 自己学到拓补排序找到这个题目,看着挺简单,其实有一些坑点,结果wrong了很多次,不过还好最终做了出来。 阅读全文
posted @ 2016-09-13 17:17 十禾。 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 自学到图的最短路径,找到这个水题一试,奈何无限次worng,让我开始怀疑人生。。。。。找了一天的bug,终于找到,,,因为算的最后的数在比较过程中可能会超出int造成数据出错,。。。。真是醉了。。。。。把int全部改成longlong就ac了,现在代码写的还不是太简洁,以后补充。。。 阅读全文
posted @ 2016-09-11 22:34 十禾。 阅读(165) 评论(0) 推荐(0) 编辑