倍增RMG

2023-11-03

#include<bits/stdc++.h>
#define inf 0x3f3f3f3f
#define eps 1e-8
#define pi 3.1415
typedef long long ll;
using namespace std;
int n,m,a[50005];
int fMin[50001][20];
int fMax[50005][20];
void init(){
    for(int i=1; i<=n; i++)
        fMin[i][0]=fMax[i][0]=a[i];
    for(int j=1; (1<<j)<=n; j++){
        for(int i=1; i+(1<<j)-1<=n; i++){
            fMin[i][j]=min(fMin[i][j-1],fMin[i+(1<<(j-1))][j-1]);
            fMax[i][j]=max(fMax[i][j-1],fMax[i+(1<<(j-1))][j-1]);
        }
    }
}
int query(int l,int r){
    int k=(int)(log(r-l+1)/log(2));
    return max(fMax[l][k],fMax[r-(1<<k)+1][k])-min(fMin[l][k],fMin[r-(1<<k)+1][k]);
}
int main(){
    int x,y;
    scanf("%d%d",&n,&m);
    for(int i=1; i<=n; i++)
        scanf("%d",&a[i]);
    init();
    for(int i=1; i<=m; i++){
        scanf("%d%d",&x,&y);
        printf("%d\n",query(x,y));
    }
    return 0;
}
倍增RMG例题 
In数组长度5,询问数1
5 1
11 100 3 6 9
1 5
Out问[1,5]区间内最大差值
97

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

倍增RMG 的相关文章

  • 正大新闻:炒期货巨亏7000万引股价大跌豪悦护理回购+增持

    昨日晚间 上市公司豪悦护理发布公告称 拟以1 4亿元 2亿元回购股份 回购价格不超过75元 股 另外 其控股股东 实际控制人李志彪拟3个月内增持2000万元 5000万元 值得注意的是 通过近几日的公告可以发现 此次回购或为豪悦护理对近日因
  • 想要设计自己的微服务?看这篇文章就对了

    欢迎大家前往腾讯云 社区 获取更多腾讯海量技术实践干货哦 本文由我就静静地看 发表于云 社区专栏 本文通过使用Spring Boot Spring Cloud和Docker构建的概念验证应用程序的示例 为了解常见的微服务架构模式提供了一个起
  • 前端练手项目合集40.0个,附源码,2022年最新

    今天分享40个博主平时收集整理的前端练手项目 都是一些适合前端新手的小项目合集 1 网易云音乐首页制作 2 实战项目之今日头条 3 实战项目之拉勾网 4 ReactNative项目之美食APP 5 uni APP项目实战教程 6 React
  • 测试人员掌握基本Linux命令——查看日志(实时日志)

    很多初级测试人员 在进行执行测试用例这个步骤时 发现bug 不能更加的准确去定位bug 在这样的情况下就可以打开Linux服务器 敲命令查看操作进行中的实时日志 当系统报错时 可以截图日志在缺陷管理系统中 开发人员就知道什么地方错了 操作步
  • rocksdb原理_ceph性能调优历程-rocksdb篇(1)

    最近调优及其他工作实在太忙 没有太多时间写心得 今天抽空来总结一下阶段性成果吧 从一开始的ceph调研 系统调优开始 ceph集群存储大规模数据之后 集群文件数超过2亿 rgw并发写性能下降的问题一直困扰我们 终于在最近找到了原因及相关解决
  • C++primer Plus 第七章复习题

    1 使用函数的3个步骤是什么 定义函数 提供原型 调用函数 2 请创建与下面的描述匹配的函数原型 igor 没有参数 且没有返回值 void igor tofu 接受一个int参数 并返回一个float float tofu int mpg
  • 去除discuz手机版链接&mobile=2后缀

    discuz手机版链接自动添加 mobile 2 导致百度收录的手机版链接无法打开 解决思路 1 打开 source class helper helper mobile php文件搜索下面代码 约在22行 content preg rep
  • malloc的底层实现(ptmalloc)

    前言 本文主要介绍了ptmalloc对于内存分配的管理 结合网上的一些文章和个人的理解 对ptmalloc的实现原理做一些总结 内存布局 介绍ptmalloc之前 我们先了解一下内存布局 以x86的32位系统为例 从上图可以看到 栈至顶向下
  • 【深度学习】_amax() got an unexpected keyword argument ‘dim‘ 解决方案

    在定义一个点云数据pc后 想使用pc max dim 0 然后出现了 amax got an unexpected keyword argument dim 这个是因为对于tensor类型的数据和ndarray类型的数据都有一个max mi
  • 彻底搞懂字符编码ASCII,GB2312,UNICODE,UTF-8

    文章目录 基础 什么是字符编码 正文 ASCII ASCII扩展码 GB2312 GBK DBCS UNICODE UTF 8 UTF 16 USC 2 UTF 32 USC 4 编程语言对字符编码的支持 阅读了一篇关于编码的博客 点击打开
  • Matlab实现PSO算法(附上10个完整仿真源码)

    PSO Particle Swarm Optimization 是一种优化算法 它模拟了鸟群或鱼群等动物的集体行为 通过群体智能的方式来解决优化问题 PSO算法最初由Kennedy和Eberhart在1995年提出 近年来得到了广泛的应用
  • 区块链上的订阅

    为分散式应用程式 以太坊 实施订阅模型 Luca Bravo在Unsplash上拍摄的背景照片 以太坊徽标 火种金标志 介绍 您可能已经听说过 去中心化的应用程序将成为互联网的未来 为了使这个分散的生态系统蓬勃发展并可持续发展 我们将需要许
  • 人工智能数学基础---定积分2:定积分的性质

    一 引言 在 人工智能数学基础 定积分1 定积分的概念以及近似计算 介绍了定积分的概念 几何意义 用定义来求定积分的案例以及使用矩形法 梯形法和抛物线法求定积分近似值的方法和案例等基础知识 根据上文的介绍 结合相关知识补充如下2条规则 可以
  • #pragma once 与#ifndef 的区别解析

    原文地址 http blog csdn net hkx1n article details 4313303 作用 为了避免同一个文件被include多次 C C 中有两种方式 一种是 ifndef方式 一种是 pragma once方式 在
  • linux 查看文件的inode使用情况

    linux 查看文件的inode使用情况 查看文件的空间使用情况 root racdb01 df h Filesystem Size Used Avail Use Mounted on dev mapper vg lgoracle lv r
  • Hutool工具BeanUtil.copyProperties实现自定义类型转换器之字符串转时间格式化

    hutool工具BeanUtil copyProperties在字符串转LocalDateTime时默认用的格式为yyyy MM ddTHH mm ss 所以需要自定义转换器才行 在转换时会优先使用自定义的 在项目启动时执行一次此段代码即可
  • Vue-cli 与Vite 环境搭建与项目构建

    Vue cli 与Vite 环境搭建与项目构建 在之前的语法演示中 我们直接使用 script 引入 Vue 3 从而在浏览器里实现了所有调试功能 但是在实际的项目中 我们会使用专门的调试工具 在项目上线之前 代码也需要打包压缩 并且考虑到
  • $.extend插件的开发与代码的编写

    extend插件的开发与代码的编写 extend item 该方法是将item合并到Jquery的全局对象中去 相当于为Jquery全局对象添加了一个静态方法 extend SayHello function value alert hel
  • Golang(Go语言)内置函数之append

    append主要用于给某个切片 slice 追加元素 如果该切片存储空间 cap 足够 就直接追加 长度 len 变长 如果空间不足 就会重新开辟内存 并将之前的元素和新的元素一同拷贝进去 第一个参数为切片 后面是该切片存储元素类型的可变参

随机推荐

  • TCP超时编程

    2018 2 12http blog csdn net NK test article details 49050379 这个是超时相关的设置 不过比较麻烦的就是 还有很多错误的设置比较难 C的却是太底层的底层的东西 http blog c
  • gcc 编译小笔记

    最近在测试编译个程序的时候发现无论如何都没法正常编译 命令行是这样的 gcc I include L lib lVU lfftw3f lvsip lfftw lfftw3f lrfftw conv1dEx c 一直报链接错误 但是库文件名字
  • python数据库框架_Python六大框架对比,Web2py略胜一筹

    Python是一门动态 面向对象语言 其最初就是作为一门面向对象语言设计的 并且在后期又加入了一些更高级的特性 除了语言本身的设计目的之外 Python标准库也是值得大家称赞的 Python甚至还自带服务器 其它方面 Python拥有足够多
  • Windows平台实现Unity下窗体

    技术背景 随着Unity3D的应用范围越来越广 越来越多的行业开始基于Unity3D开发产品 如传统行业中虚拟仿真教育 航空工业 室内设计 城市规划 工业仿真等领域 基于此 好多开发者苦于在Unity环境下 没有低延迟的推拉流解决方案 前几
  • md5 collision(md5碰撞)

    题目来源 南京邮电大学网络攻防训练平台 Web题 md5 collision 解题过程 点开题目标题 呈现在眼前的是一段php代码 代码如下 md51 md5 QNKCDZO a GET a md52 md5 a if isset a if
  • 医学院校计算机专业课程设计题目

    1 医院药库管理系统的设计与实现 2 医院用小型药品不良反应监测系统 3 中医院门诊预约系统的设计与实现 4 网上预约挂号系统的设计 5 医院药房管理系统的设计 6 医院病房管理系统的设计与实现 7 医院门诊划价收费系统 8 医院交流平台的
  • oracle PL/SQL小结

    PL SQL 代码块 DECLARE optional BEGIN required EXCEPTION optional END required 若使用dbms output输出时 先要设置 set serveroutput on 显示
  • SQL-labs的第27a关——union和select被屏蔽 延时盲注(Get)

    注意 该关无法返回错误 所以不适合报错注入 一 判断闭合方式 输入语句 id 1 26 26 1 2 00 返回页面如下 输入语句 id 1 26 26 1 1 00 返回页面如下 将双引号作为闭合方式 各个语句反应正常 可以确定双引号就是
  • APNS推送通知的流程

    http www cnblogs com chen1987lei archive 2011 05 09 2041090 html 1 将app注册notification里面 并从APNS上获取测试机的deviceToken BOOL ap
  • 开心档-开发入门网之Git基本操作

    Git 基本操作 Git 的工作就是创建和保存你项目的快照及与之后的快照进行对比 本章将对有关创建与提交你的项目快照的命令作介绍 Git 常用的是以下 6 个命令 git clone git push git add git commit
  • yum install iptables #CentOS系统 apt-get install iptables #Debian系统

    yum install iptables CentOS系统 apt get install iptables Ubuntu系统
  • java并发总结

    一 并发基础 1 进程与线程 进程 程序由指令和数据组成 但这些指令要运行 数据要读写 就必须将指令加载至 CPU 数据加载至内存 在指令运行过程中还需要用到磁盘 网络等设备 进程就是用来加载指令 管理内存 管理 IO 的 当一个程序被运行
  • SpringBoot-获取上下文

    SpringBoot 获取上下文 1 创建上下文工具类SpringContextUtil 如下为简单的上下文工具类 可以根据自己的需要添加上下文相关的管理方法 package com supre springboot import org
  • kubeadm部署的k8s1.20版本get cs报错

    报错内容如下 root k8s master1 kubectl get cs Warning v1 ComponentStatus is deprecated in v1 19 NAME STATUS MESSAGE ERROR sched
  • 遗传算法详解及matlab代码实现

    这里写目录标题 1 定义 主要特点 对象 基本操作 核心内容 2 常用词汇 基因型 genotype 表现型 编码 coding 解码 decoding 个体 individual 种群 population 适应度 fitness 3 形
  • 抓取中国银行汇率函数

    抓取中国银行汇率表数据 string file source 要抓取的内容页 string file target 本机生成的文件 function getRate file source file target if file sourc
  • NGINX引入线程池 性能提升9倍

    NGINX引入线程池 性能提升9倍 喜欢 作者 Valentin Bartenev 译者 韩陆 发布于 2015年6月23日 估计阅读时间 6分钟 智能化运维 Serverless DevOps 2017年有哪些最新运维技术趋势 CNUTC
  • 单链表的基本操作实现

    一 实验目的 巩固线性表的数据结构的存储方法和相关操作 学会针对具体应用 使用线性表的相关知识来解决具体问题 二 实验内容 1 建立一个由n个学生成绩的顺序表 n的大小由自己确定 每一个学生的成绩信息由自己确定 实现数据的对表进行插入 删除
  • 有没有python时间序列的教程推荐?手把手教你使用Python绘制时间序列图!

    前言 那么让我来详细讲解 手把手教你使用Python绘制时间序列图 的完整攻略 介绍 时间序列图是一种用于展示随时间变化的数据的图表 可以帮助我们从数据中识别出时间上的模式和趋势变化 Python作为一种强大的数据分析工具 当然也可以用来绘
  • 倍增RMG

    include