2017年2月14日

线段树从零开始

摘要: 线段树从零开始 一:为什么需要线段树? 题目一:10000个正整数,编号1到10000,用A[1],A[2],A[10000]表示。修改:无统计:1.编号从L到R的所有数之和为多少? 其中1<= L <= R <= 10000. 方法一:对于统计L,R ,需要求下标从L到R的所有数的和,从L到R的所 阅读全文

posted @ 2017-02-14 20:19 比特飞流 阅读(385) 评论(0) 推荐(0)

超全的线段树

摘要: 线段树详解 目录: 一:综述 二:原理 三:递归实现 四:非递归原理 五:非递归实现 六:线段树解题模型 七:扫描线 八:可持久化 (主席树) 九:练习题 一:综述 假设有编号从1到n的n个点,每个点都存了一些信息,用[L,R]表示下标从L到R的这些点。 线段树的用处就是,对编号连续的一些点进行修改 阅读全文

posted @ 2017-02-14 20:17 比特飞流 阅读(1191) 评论(0) 推荐(1)

2016年11月13日

求第K大数

摘要: 1、排序找第K个数 2、快速排序分块 时间复杂度 2呢 阅读全文

posted @ 2016-11-13 18:00 比特飞流 阅读(81) 评论(0) 推荐(0)

2016年10月28日

求组合数取模的几种方法

摘要: 求Cnm%P 其中P为大质数 ①利用杨辉三角 ②Cnm=[n*(n-1)......*(n-2)]/[m*(m-1)....*1],由式子的意义可知此数肯定为整数,将分子分解质因数,记录下各个质因子的个数,减去对应的分母的质因子的个数,最后每个质数的个数肯定非负,在统计各个质因子的个数,最后对P取模 阅读全文

posted @ 2016-10-28 10:38 比特飞流 阅读(472) 评论(0) 推荐(0)

2016年10月18日

多个矩形,求覆盖面积,周长,及交点

摘要: 问题:给出若干个矩形,(给的是矩形左上角和右下角坐标),求最后所得图形的面积/周长; 三个矩形如左图所示,而若要计算面积,看右图,用3个矩形各自的面积之和减去重复部分(红色和蓝色)的面积 人算很简单,但是用算法怎么实现呢? 此类问题一般都是用线段树辅助扫描法来计算; 什么是扫描法?有什么用?怎么用? 阅读全文

posted @ 2016-10-18 15:26 比特飞流 阅读(3833) 评论(0) 推荐(1)

2016年10月5日

字符串hash算法

摘要: http://www.cnblogs.com/zyf0163/p/4806951.html hash函数对大家来说不陌生吧 ? 而这次我们就用hash函数来实现字符串匹配。 首先我们会想一下二进制数。 对于任意一个二进制数,我们将它化为10进制的数的方法如下(以二进制数1101101为例): has 阅读全文

posted @ 2016-10-05 14:18 比特飞流 阅读(814) 评论(0) 推荐(0)

2016年10月3日

DFS序详解

摘要: dfs序就是一棵树在dfs遍历时组成的节点序列. 它有这样一个特点:一棵子树的dfs序是一个区间. 下面是dfs序的基本代码: void dfs(int x,int pre,int d){//L,R表示一个子树的范围 L[x]=++tot; dep[x]=d; for(int i=0;i<e[x]. 阅读全文

posted @ 2016-10-03 15:04 比特飞流 阅读(3532) 评论(0) 推荐(1)

2016年10月2日

dfs序

摘要: dfs序比较重要的性质:一棵子树的所有节点在dfs序里是连续一段,主要就是利用这个性质来解题 题型一:对某个点X权值加上一个数W,查询某个子树X里所有点权值和。 解:列出dfs序,实现修改一个数,查询一段序列的和,显然这个序列可以用线段树维护。 题型二:对X到Y的最短路上所有点权值加上一个数W,查询 阅读全文

posted @ 2016-10-02 20:42 比特飞流 阅读(188) 评论(0) 推荐(0)

bzoj2441 小W的问题

摘要: bzoj2441 按照纵坐标排序,从小到大插入数列中,每个点i维护一个data[i]表示未插入序列中横坐标小于i的数的个数(用线段树)其实点i就是“W”中第一个极小点,那么f[j]就等于1到j-1中所有已插入的data之和(也用线段树),j点就是“W”的极大点,为什么呢?因为现在在未插入数列中的数都 阅读全文

posted @ 2016-10-02 20:40 比特飞流 阅读(179) 评论(0) 推荐(0)

2016年8月19日

彩色迷宫

摘要: data 再来谈一个迷宫的问题, 有一个N×M的迷宫,起点在左上角,终点在右下角,可以上下左右移动,但是迷宫中的每个格子都是带颜色的,每种颜色给这个格子带来了一中魔力,其中 “红色”带来的是什么魔力呢?啊啊,表示“此路不同”;“粉色”呢,正常通过;“橙色”也可以正常通过,但是会把你的浑身上下都变成橙 阅读全文

posted @ 2016-08-19 15:03 比特飞流 阅读(243) 评论(0) 推荐(0)

导航