入门算法
旺仔不吃牛奶糖
这个作者很懒,什么都没留下…
展开
-
线段树入门篇讲解
总原理:将[1,n]分解成若干特定的子区间(所开数组的大小不超过4*n,n是原数组的长度)用线段树统计的东西,必须符合区间加法,(也就是说,如果已知左右两子树的全部信息,比如要能够推出父节点);否则,不可能通过分成的子区间来得到[L,R]的统计结果。注意:区分3个概念:原数组下标,线段树中的下标和存储下标。原数组下标,这里都默认下标从1开始(一般用a数组表示,a [1] , a[2...原创 2019-07-31 11:27:00 · 184 阅读 · 0 评论 -
树状数组 区间修改区间查询
树状数组 区间修改+区间查询树状数组的区间修改和区间查询需要维护 两个 树状数组首先还是先利用区间修改 单点查询用过的差分思想(将区间的修改操作变成单点的修改),我们先搞一个c数组作为差分数组 a数组是原数组,c数组是差分数组。简单可证:即 a[1]=c[1], a[2]=c[2]+c[1], a[3]=c[3]+c[2]+c[1];那么可以得到以下式子:...原创 2019-07-22 16:57:20 · 423 阅读 · 0 评论 -
POJ 2417 BSGS裸题
题目描述:Given a prime P, 2 <= P < 231, an integer B, 2 <= B < P, and an integer N, 1 <= N < P, compute the discrete logarithm of N, base B, modulo P. That is, find an integer L such t...原创 2019-07-22 17:01:04 · 118 阅读 · 0 评论