news 2026/5/1 9:54:02

20260105 莫队总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
20260105 莫队总结

莫队

莫队是一种高效的离线处理区间查询问题的算法,本质是一种经过优化的暴力算法,该算法基于以下核心思想:当已知区间 [l, r] 的答案时,可以以 O(k) 的时间复杂度(k 通常为 1 或 log n)计算出相邻区间 [l±1, r] 和 [l, r±1] 的答案。

算法流程

  1. 读取所有查询请求
  2. 按照特定规则对查询进行排序
  3. 依次处理每个查询,通过增量调整的方式从上一个区间移动到当前区间

示例移动路径:
[1, 3] → [1, 4] → [2, 4]

排序

采用双关键字排序:

  1. 第一关键字:左端点 l 所在的块编号
  2. 第二关键字:右端点 r 的值

时间复杂度

设块大小为 B,序列长度为 n,查询次数为 m:

  • 左端点移动次数:O(mB)
  • 右端点移动次数:O(n²/B)

当取 B = √(n²/m) 时,达到最优时间复杂度。通过合理选择块大小,可以确保整体复杂度为 O(n√m)。

代码

intcmp(qq a,qq b){//蝶形优化if(pos[a.l]^pos[b.l]){returnpos[a.l]<pos[b.l];}if(pos[a.l]&1){returna.r<b.r;}returna.r>b.r;}intmain(){sort(q+1,q+1+m,cmp);for(inti=1;i<=m;i++){while(l<q[i].l)ans-=!--t[a[l++]];while(l>q[i].l)ans+=!t[a[--l]]++;while(r<q[i].r)ans+=!t[a[++r]]++;while(r>q[i].r)ans-=!--t[a[r--]];cnt[q[i].id]=ans;}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 9:30:59

5分钟掌握游戏汉化:零基础完整技术方案

5分钟掌握游戏汉化&#xff1a;零基础完整技术方案 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 当面对心仪的外语游戏却因语言障碍而困扰时&#xff0c;XUnity自动翻译器正是你需要的专业解决方案。作…

作者头像 李华
网站建设 2026/4/25 2:50:38

星露谷物语XNB文件处理完全指南:轻松定制你的农场世界

星露谷物语XNB文件处理完全指南&#xff1a;轻松定制你的农场世界 【免费下载链接】xnbcli A CLI tool for XNB packing/unpacking purpose built for Stardew Valley. 项目地址: https://gitcode.com/gh_mirrors/xn/xnbcli 想要为《星露谷物语》打造独一无二的游戏体验…

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

大模型的“母语”竟是代码?一篇讲透JSON提示词的3种“硬核”玩法

一、为什么AI听不懂“人话”你告诉AI要一张“红垫子上的狗”&#xff0c;结果它给你画了一条“红色的狗”&#xff1b;你想做一个简单的“希区柯克变焦”视频&#xff0c;AI却让画面像醉汉一样乱晃。承认吧&#xff0c;这真不是你的提示词写得烂&#xff0c;而是人类语言天生就…

作者头像 李华
网站建设 2026/5/1 8:04:07

Qwen2.5-7B项目管理:任务分解与规划

Qwen2.5-7B项目管理&#xff1a;任务分解与规划 1. 引言&#xff1a;大模型时代的项目管理挑战 1.1 Qwen2.5-7B的技术背景 随着大语言模型&#xff08;LLM&#xff09;在自然语言理解、代码生成和多模态推理等领域的广泛应用&#xff0c;如何高效部署和管理这些模型成为工程…

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

3分钟极速上手LeagueAkari:新手必会的5大核心功能实战指南

3分钟极速上手LeagueAkari&#xff1a;新手必会的5大核心功能实战指南 【免费下载链接】LeagueAkari ✨兴趣使然的&#xff0c;功能全面的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/LeagueAkari 还在…

作者头像 李华
网站建设 2026/5/1 7:06:22

拯救者笔记本性能调优新体验:从入门到精通的全方位指南

拯救者笔记本性能调优新体验&#xff1a;从入门到精通的全方位指南 【免费下载链接】LenovoLegionToolkit Lightweight Lenovo Vantage and Hotkeys replacement for Lenovo Legion laptops. 项目地址: https://gitcode.com/gh_mirrors/le/LenovoLegionToolkit 嘿&#…

作者头像 李华