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

QOJ6608 Descent of Dragons

修改只会使值从 \(x\) 变成 \(x+1\),这个对整体的值域变化是非常小的。

对于一个阈值 \(lim\),考虑 \(01\) 序列 \(A_{lim}\)\(A_{lim,i}=[a_i\ge lim]\)

对于一次修改,实际上就是让 \(A_{x+1,i}\leftarrow A_{x+1,i}\ \mathrm{or}\ A_{x,i}\)

这个 \(\mathrm{or}\) 不好维护,但是可以发现 \(A_{x+1,i}\) 总是 \(\le A_{x,i}\) 的,所以只要直接复制就做完了。而这个是可以线段树维护的。

#include <bits/stdc++.h>
using namespace std;const int kN = 5e5 + 5, kS = kN * 60;
int n, q;struct SGT {int tot = 0;int root[kN];int ls[kS], rs[kS], cnt[kS];int Copy(int x) {int p = ++tot;ls[p] = ls[x];rs[p] = rs[x];cnt[p] = cnt[x];return p;}void Up(int o) { cnt[o] = cnt[ls[o]] + cnt[rs[o]]; }void Build(int &o, int l, int r) {cnt[o = ++tot] = r - l + 1;if(l == r) return ;int mid = (l + r) >> 1;Build(ls[o], l, mid);Build(rs[o], mid + 1, r);}void Copy(int &o1, int o2, int l, int r, int x, int y) {if(!o2 || (l > y) || (r < x)) return ;if((l >= x) && (r <= y)) return void(o1 = o2);int mid = (l + r) >> 1;o1 = Copy(o1);Copy(ls[o1], ls[o2], l, mid, x, y);Copy(rs[o1], rs[o2], mid + 1, r, x, y);Up(o1);}bool Count(int o, int l, int r, int x, int y) {if(!o || (l > y) || (r < x)) return 0;if((l >= x) && (r <= y)) return cnt[o];int mid = (l + r) >> 1;return Count(ls[o], l, mid, x, y) || Count(rs[o], mid + 1, r, x, y);}
} sgt;int main() {// freopen("1.in", "r", stdin);// freopen("1.out", "w", stdout);ios::sync_with_stdio(0), cin.tie(0);cin >> n >> q;sgt.Build(sgt.root[0], 1, n);while(q--) {int op, l, r, x;cin >> op >> l >> r;if(op == 1) {cin >> x;sgt.Copy(sgt.root[x + 1], sgt.root[x], 1, n, l, r);}else {int L = -1, R = kN;while(L + 1 < R) {int mid = (L + R) >> 1;sgt.Count(sgt.root[mid], 1, n, l, r) ? (L = mid) : (R = mid);}cout << L << "\n";}}return 0;
}
http://www.jsqmd.com/news/36786/

相关文章:

  • 2026年HR 数字化转型趋势:AI如何帮助HR从招聘到绩效全流程人效提升 48%?
  • Windows利用批处理脚本判断端口, 启动tomcat
  • 2025最新实测对比:5款热门工程项目管理系统 协同能力与实用体验深度测评
  • 2025年双轴拌馅机实力厂家权威推荐榜单:调味料拌馅机/酱菜搅拌机/翻斗式拌馅机源头厂家精选
  • 2025年终绩效,AI面谈系统让沟通效率翻倍,主管再也不用熬夜写总结
  • vue实现T型二维表格
  • antd table 列表树形结构展示
  • 2025年深圳救护车运转公司权威推荐榜单:正规救护车出租/急救车出租/出租救护车源头公司精选
  • 对隐式类型转换保持警觉
  • es中批量删除数据
  • docker安装mysql/Redis/nacos/minio/es/xxl-job
  • 低代码高价值场景:让设备管理真正成为企业数字化资产
  • re-BABYRE-攻防世界
  • 二维数组去重
  • Pinely Round 5 (Div. 1 + Div. 2) A-D细解
  • 2025年三相滤波器源头厂家权威推荐榜单:EMI电源滤波器/防雷滤波器/电源滤波器源头厂家精选
  • UT010029: Stream is closed
  • 官宣上线!RocketMQ for AI:企业级 AI 应用异步通信首选方案
  • GD32VW553-IOT V2 测评和移植 - 实践
  • 什么是 FFmpeg:开源免费的多媒体处理框架 - 实践
  • AI元人文宪章:在缺陷中前行——价值权衡时代的协作体系
  • 2025年台湾铨盛仪表公司口碑推荐榜
  • 2025年靠谱的藤椒火锅底料口碑推荐榜单
  • 2025年离心管道风机定制厂家推荐排行榜
  • zed odoo lsp配置
  • Raylib 音乐和音效
  • oh-my-zsh又双叒叕出问题了......
  • 读书笔记:并行 DML:批量数据修改的“超级加速器”
  • 2025年镀锌钢格板品牌推荐排行榜单
  • 低代码高频实践场景系列之一——EHS系统