当前位置: 首页 > news >正文

个人网站备案备注信息erp系统教学

个人网站备案备注信息,erp系统教学,wordpress 删除 前缀,友情链接网自动收录本文参考【朝夕的ACM笔记】数据结构-ST表 在练习线段树的过程中经常会感叹代码怎么这么长啊啊啊懒标记怎么这么难传啊啊啊 于是在得知有一种代码量远小于线段树的算法时、、、#xff08;其实是因为做到了[SCOI2007] 降雨量 就是ST表啦~ 在什么情况下可以用ST表代替线段树…本文参考【朝夕的ACM笔记】数据结构-ST表 在练习线段树的过程中经常会感叹代码怎么这么长啊啊啊懒标记怎么这么难传啊啊啊 于是在得知有一种代码量远小于线段树的算法时、、、其实是因为做到了[SCOI2007] 降雨量 就是ST表啦~ 在什么情况下可以用ST表代替线段树呢 不需要区间修改的可重复贡献问题 不需要区间修改很好理解什么叫做可重复贡献呢 我们知道求一个数组的最大值比如说长度为10的数组我们可以先求前六个数的最大值再求后七个数的最大值最后求这两个最大值的最大值虽然这中间有重复的元素但是对最终的最大值结果不会有影响这就叫做可重复贡献问题。 但是如果我们要求一个数组中所有元素的和还是比如说长度为10的数组我们就不能用前六个元素的和加上后七个元素的和了这就叫做不可重复贡献问题。 常见的可重复贡献问题包括求区间最大/小值区间按位和/或区间gcd… 怎么构建ST表呢 ST表是一种基于倍增算法的数据结构 我们设f[i][j]表示区间 [ i , i 2 j − 1 ] [i, i 2^j - 1] [i,i2j−1] 的最大值因此f[i][0]表示的就是第 i 个元素本身了 由倍增思想区间 [ i , i 2 j − 1 ] [i, i 2^j - 1] [i,i2j−1] 可以被我们拆成两个长度为 2 j − 1 2^{j - 1} 2j−1 的子区间所以可以的到递推式 f [ i ] [ j ] m a x ( f [ i ] [ j − 1 ] , f [ i 2 j − 1 ] [ j − 1 ] ) f[i][j]max(f[i][j - 1], f[i 2^{j-1}][j-1]) f[i][j]max(f[i][j−1],f[i2j−1][j−1])因此先枚举 j j j再枚举 i i i就可以得到 f [ i ] [ j ] f[i][j] f[i][j] 的值了 怎么查询区间信息呢– RMQ算法 如果我们想知道 [ l , r ] [l, r] [l,r] 的最值我们可能会输出 f [ l ] [ x ] f[l][x] f[l][x], l 2 x − 1 r l2^x-1r l2x−1r这样解出x会发现 x l o g 2 ( r − l 1 ) xlog_2(r-l1) xlog2​(r−l1)这样得到的 x 就不一定是个整数了向下取整的话可能会使区间有所损失 这时可重复贡献的性质就发挥作用了我们把要查询的区间 [ l , r ] [l,r] [l,r] 分成长度为 ⌊ x ⌋ \lfloor{x}\rfloor ⌊x⌋ 两部分一部分以 l 开头一部分以 r 结尾也就是 [ l , l 2 x − 1 ] [l, l2^x-1] [l,l2x−1] 和 [ r − 2 x 1 , r ] [r-2^x1,r] [r−2x1,r]只要找到这两个区间的最大值再取最大值就可以得到整个区间的最大值了 时间复杂度 预处理 O ( n l o g n ) O(nlogn) O(nlogn) 查询 O ( 1 ) O(1) O(1) 板子 #include bits/stdc.husing namespace std;int f[100005][21]; int logn[100005], n, m;void pre() // 预处理log 防止查询时T {logn[1] 0, logn[2] 1;for (int i 3; i n; i)logn[i] logn[i / 2] 1; } int main() {ios::sync_with_stdio(false);cin.tie(0), cout.tie(0);cin n m;pre();// 输入数组本身for (int i 1; i n; i) cin f[i][0];for (int j 1; j 21; j) // 2的21次方满足两百万数据 数据变大上限也要变大for (int i 1; i (1 j) - 1 n; i )f[i][j] max(f[i][j - 1], f[i (1 (j - 1))][j - 1]); // 这里根据所求内容不同需要做相应修改while (m -- ){cin l r;// RMQ查询int lg logn[r - l 1];int ans max(f[l][lg], f[r - (1 lg) 1][lg]);cout ans \n;} }
http://www.lebaoying.cn/news/131506.html

相关文章:

  • 外卖网站建设的策划方案楼市最新消息
  • 网站制作自学网wordpress faq模板
  • 广东官方网站建设合肥网络推广有限公司
  • 永康做网站的公司浙江高端网站
  • 网站源代码安装网站建设包含那些 内容
  • 直播网站开发教程个人养老保险查询系统
  • 坑梓做网站公司怎么样制作动漫需要学什么专业
  • 建设网站服务器自营方式网络营销的常用方法
  • 阿里巴巴做国际网站多少钱网站架构技术
  • 闵行区网站开发网页设计师需要会什么软件
  • 国家对地理信息网站建设的重视网站建设运营协议
  • 深圳外包网站制作公司站长工具一区
  • 机械东莞网站建设0769网站源码爬取
  • 骗子会利用钓鱼网站做啥统计wordpress访问量
  • 网站下拉菜单重叠怎么创建视频号
  • 网站推广介绍wordpress取消301跳转
  • wordpress和蝉知青岛官网优化
  • 度假区网站建设方案微信公众账号申请注册
  • 网站开发为什么要用框架网站保障体系建设
  • 装修网站合作平台有哪些建立平台要多少钱
  • 网站的后期维护工作一般做什么广州市民网页官网
  • wordpress 图站开个网站做代理赚钱吗
  • 大型网站有哪些用php做的购物网站开发 需求分析
  • ftp网站建设网站后台管理系统 英文
  • 郑州网站建设最便宜wordpress主题开发难吗
  • 微站是什么意思旅游网站建设色彩搭配表
  • 网站如何做的看起来高大上百度seo排名点击
  • 黑色 网站怎么做游戏推广网站
  • 音乐网站建设教程视频网站建设具体工作
  • 神木自适应网站开发中国建筑官网电话