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

站群wordpress宣武深圳网站建设公司

站群wordpress,宣武深圳网站建设公司,简单详细搭建网站教程视频教程,我的世界查询建筑网站2025/08/10 游戏客户端开发A卷 这里题目就不展开讲了,题目本身可以转换为查询数组区间上最大(小)值的个数。 害,做题时还没学线段树,所以只暴力了20%,现在给出线段树求解代码。 关于线段树可参考左神视频…

2025/08/10 游戏客户端开发A卷

这里题目就不展开讲了,题目本身可以转换为查询数组区间上最大(小)值的个数

害,做题时还没学线段树,所以只暴力了20%,现在给出线段树求解代码。

关于线段树可参考左神视频:

左程云--算法讲解110【扩展】线段树专题1-线段树原理和代码详解

#include <iostream>
#include <vector>
#include <unordered_map>using namespace std;
const static int N = 1e5 + 1;
vector<int> cArr = vector<int>(N, 0);
vector<vector<int>> tree = vector<vector<int>>(4 * N, vector<int>(2, 0));
pair<int, int> myUnion(int i, int j);
void build(int l, int r, int i);
pair<int, int> query(int jobl, int jobr, int l, int r, int i);
pair<int, int> myUnion(pair<int, int>& left, pair<int, int>& right);pair<int, int> myUnion(pair<int, int>& left, pair<int, int>& right) {if (left.first < right.first) {return left;}else if (right.first < left.first) {return right;}else {return { left.first, left.second + right.second };}
}void build(int l, int r, int i) {if (l == r) {tree[i][0] = cArr[l];tree[i][1] = 1;return;}int mid = l + ((r - l) >> 1);build(l, mid, i << 1);build(mid + 1, r, i << 1 | 1);auto ans = myUnion(i << 1, i << 1 | 1);tree[i][0] = ans.first;tree[i][1] = ans.second;
}pair<int, int> myUnion(int i, int j) {if (tree[i][0] < tree[j][0]) {return { tree[i][0], tree[i][1] };}else if (tree[i][0] > tree[j][0]) {return { tree[j][0], tree[j][1] };}else {return { tree[i][0], tree[i][1] + tree[j][1] };}
}pair<int, int> query(int jobl, int jobr, int l, int r, int i) {if (jobl <= l && r <= jobr) {return { tree[i][0], tree[i][1] };}int mid = l + ((r - l) >> 1);pair<int, int> left, right;if (jobl <= mid) {left = query(jobl, jobr, l, mid, i << 1);}if (jobr > mid) {right = query(jobl, jobr, mid + 1, r, i << 1 | 1);}if (left.second == 0) { return right; }if (right.second == 0) { return left; }return myUnion(left, right);
}int main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int n, q;	// n -> 数组大小  q -> 查询次数cin >> n >> q;//n = 5, q = 1;for (int i = 0; i < n; ++i) {cin >> cArr[i];	// ci = ai}//cArr = { 1, -2, 2, -2, -4 };int b;for (int i = 0; i < n; ++i) {cin >> b;cArr[i] = b - cArr[i];		// ci = bi - ai}build(0, n - 1, 1);while (q--) {int l, r;cin >> l >> r;l--; r--;auto ans = query(l, r, 0, n - 1, 1);cout << ans.second << endl;}return 0;
}

http://www.dtcms.com/a/503730.html

相关文章:

  • 构建自主AI的挑战与对策:稳定性、成本与伦理安全
  • 汽车服务站建站流程网页网站原型图占位符怎么做
  • 高效解决重装后常见的7类系统适配问题
  • 如何写好代码
  • PS2020使用教程|绘制文明行车宣传画
  • 探索 C++ 类 核心概念与不同场景下的使用技巧
  • 权威机构统计的 AI 编程模型排名
  • 佛山网站建设与推广学院网站群建设方案
  • 【HTTP知识】HTTP OPTIONS 预检请求深度解析与优化策略
  • 网站建设推广好处响应式网站开发报价
  • 汽车MIMO雷达在多径环境下的角度估计——论文阅读
  • 做网站的实践报告包头网站建设良居网络
  • 【论文精度-3】POMO:强化学习中具有多个最优解的策略优化方法(Yeong-Dae Kwon 2020)
  • 基本控件-上(Num30)
  • FFmpeg 基本API avcodec_find_decoder函数内部调用流程分析
  • 用wordpress建立学校网站吗淄博公司网站建设效果
  • C++ std::Set<std::pair>
  • 如何解决 pip install -r requirements.txt 私有仓库认证失败 401 Unauthorized 问题
  • LLMs-from-scratch(第3章:编码注意力机制)
  • 江西赣建建设监理网站无锡市建设工程质量监督站网站
  • 如何生成逼真的合成表格数据:独立采样与关联建模方法对比
  • FastGPT 与 MCP 协议概述
  • 软路由系统如何做网站上海做网站seo
  • K8S--ConfigMap的用法
  • Docker 常用命令整理
  • 网站降权原因北京公司车牌指标
  • 【片上网络专题讨论一】 片上总线的发展历程
  • 忘记密码更改ubuntu18.08的密码--前提是要知道用户名work
  • Vue非单文件组件
  • SAP SD 客户信用主数据查询接口分享