随笔分类 -  0---学习

摘要:树状数组的作用和线段树基本一致,主要有更改和查询两种 一、单点修改和区间查询(洛谷p3374) 代码 #include<iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>#include<ccty 阅读全文
posted @ 2018-01-28 16:13 水题收割者 阅读(111) 评论(0) 推荐(0)
摘要:一直以为分块很高端,学完之后发现其实很简单了 分块查找是折半查找和顺序查找的一种改进方法,分块查找由于只要求索引表是有序的,对块内节点没有排序要求,因此特别适合于节点动态变化的情况。 分块就是将n个数分为每段有√n个数的多个区间,这样我们就可以在几乎O(√n)的时间内完成查找 分块模版 int bl 阅读全文
posted @ 2018-01-23 08:54 水题收割者 阅读(224) 评论(0) 推荐(0)
摘要:例题 双六游戏 一个双六上面有向前 向后无限延续的格子, 每个格子都写有整数。其中0号格子是起点,1号格子是终点。而骰子上只有a,b,-a,-b四个整数,所以根据a和b的值的不同,有可能无法到达终点掷出四个整数各多少次可以到达终点呢?如果解不唯一,输出任意一组即可。如果无解 输出impossible 阅读全文
posted @ 2018-01-21 20:59 水题收割者 阅读(123) 评论(0) 推荐(0)
摘要:蒟蒻的我也就会写个KMP的板子,并不会讲 模板如下 例题 #include<iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>#include<cctype>#include<cmath>#inc 阅读全文
posted @ 2018-01-21 18:19 水题收割者 阅读(132) 评论(0) 推荐(0)
摘要:概述 区间修改即将一个区间内所有值改为一个值(或加上一个值),为了执行快速,我们通常用“懒”标记维护整个区间值的情况,在需要是再将这个“懒”标记传到该节点的两个子节点上。 模版(此为在整个区间上加上一个值)(洛谷p3372) #include<iostream>#include<cstdio>#in 阅读全文
posted @ 2017-12-23 20:08 水题收割者 阅读(199) 评论(0) 推荐(0)
摘要:此算法可用来处理区间最值问题,预处理时间为O(nlogn),查询时间为O(1) 此算法主要基于倍增思想,用以数组st[i][j]表示从第i个元素开始向后搜2的j次方的最值 可用递推的方式求得:st[i][j]=min/max(st[i][j-1],st[i+1<<(j-1)][j-1]) 下面的模板 阅读全文
posted @ 2017-11-26 10:00 水题收割者 阅读(243) 评论(0) 推荐(0)
摘要:哈(luan)希(gao)简单来说就是把一整个字符串映射到一个整数中 过程可以这样表示:hash[i]=(hash[i-1]*HASH+num(s[i]))%mod; 一般情况下我们为了保险起见一般使用双哈希 真没什么好说的了,上模板吧 #include<iostream>#include<cstd 阅读全文
posted @ 2017-11-22 22:36 水题收割者 阅读(175) 评论(0) 推荐(0)
摘要:概述 对于有根树T的两个结点u、v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u、v的祖先且x的深度尽可能大。 如图,3和5的最近公共祖先是1,5和2的最近公共祖先是4 在本篇中我们先介绍一下倍增算法 我们需要一个数组de[i]来表示每一个节点i的深度,用另一数组parent[i][j 阅读全文
posted @ 2017-11-22 22:28 水题收割者 阅读(444) 评论(0) 推荐(1)
摘要:概述 线段树就是用一棵二叉树维护某一区间内的某一值(最值,和,乘积......),主要有区间查询和区间修改两种操作,区间修改又有自上而下修改和自下而上修改两种,本人更习惯于自上而下修改。 下面是百度百科对线段树的描述 线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间 阅读全文
posted @ 2017-11-19 09:02 水题收割者 阅读(1157) 评论(0) 推荐(1)
摘要:桶排,顾名思义,就是开一个数组,包含所有在n的范围内的数,将每一个输入的数x加到对应到数组a[x]中,最后一起输出。 桶排的时间复杂度为O(N)。 模板如下: #include<iostream>#include<cstdio>#include<cstring>#include<string>#in 阅读全文
posted @ 2017-10-23 22:41 水题收割者 阅读(184) 评论(0) 推荐(0)