news 2026/5/1 4:54:33

树上倍增2

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
树上倍增2

预处理填表 二进制log

lc

构造后 抽象为树

实现倍增跳转的查询

另一种视角

#include <iostream>

#include <vector>

#include <cmath>

#include <algorithm>

using namespace std;

const int MAXN = 1e5 + 5;

const int LOG = 20;

int st[LOG][MAXN];

int a[MAXN];

int n;

void build() {

for (int i = 1; i <= n; i++) st[0][i] = a[i];

for (int k = 1; k < LOG; k++)

for (int i = 1; i + (1 << k) - 1 <= n; i++)

st[k][i] = max(st[k-1][i], st[k-1][i + (1 << (k-1))]);

}

int query(int l, int r) {

int len = r - l + 1;

int k = log2(len);

return max(st[k][l], st[k][r - (1 << k) + 1]);

}

int main() {

int m;

cin >> n >> m;

for (int i = 1; i <= n; i++) cin >> a[i];

build();

while (m--) {

int l, r;

cin >> l >> r;

cout << query(l, r) << endl;

}

return 0;

}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 3:49:56

论文写不动?抢手爆款的一键生成论文工具 —— 千笔ai写作

你是否曾为论文选题发愁&#xff0c;反复修改却总对结果不满意&#xff1f;面对庞大的文献资料&#xff0c;不知从何下手&#xff1b;格式排版总是出错&#xff0c;查重率又高得让人焦虑&#xff1f;论文写作的每一步都像在闯关&#xff0c;而你却找不到合适的“外挂”。别再独…

作者头像 李华
网站建设 2026/5/1 3:48:05

Wi-Fi SAE

从医疗设备下位机软件开发的角度来看&#xff0c;Wi-Fi SAE可以被理解为一套为无线网络接入设计的、更先进的“身份核实与密钥协商”流程。1. 它是什么&#xff1f;Wi-Fi SAE的全称是“Simultaneous Authentication of Equals”&#xff08;对等实体同时认证&#xff09;。它是…

作者头像 李华
网站建设 2026/5/1 3:48:27

FDA GMP

FDA GMP&#xff08;美国食品药品监督管理局药品生产质量管理规范&#xff09;是确保药品、也包括医疗设备的生产过程稳定可靠的一套强制性规则体系。从医疗设备软件开发的视角看&#xff0c;它可以理解为保障产品最终安全有效的“生产操作系统”。 下面的表格对这五个方面进行…

作者头像 李华
网站建设 2026/5/1 3:52:17

飞牛fnOS高危漏洞? Cloudflare 给飞牛 NAS 套了层“免费 WAF 盾”

最近&#xff0c;国产NAS系统飞牛被爆出严重安全漏洞&#xff0c;路径穿越跳过权限验证&#xff0c;直接访问系统内部资料&#xff0c;一度冲上知乎热榜 不少用户都在担忧数据安全&#xff0c;今天一篇教程教你拯救自己的NAS。 你以为开了 IPv6 就能愉快外网访问 NAS&#x…

作者头像 李华
网站建设 2026/5/1 3:49:47

名字空间(namespace)

最初C标准中并没有名字空间&#xff0c;要求程序中全局作用域中声明的变量、函数、类型等必须具有唯一的名字如果在同一个程序中有两个名字相同的全局变量将产生命名冲突&#xff08;和C语言一样&#xff09;如果程序中引入第三方库就必须保证程序中定义的全局名都不能与所用库…

作者头像 李华