news 2026/4/26 18:55:13

前后缀预处理|二分

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
前后缀预处理|二分

lc3488

前后各加一个哨兵 解决边界情况

hash分组后 二分query

class Solution {
public:
vector<int> solveQueries(vector<int>& nums, vector<int>& queries) {
unordered_map<int, vector<int>> indices;
for (int i = 0; i < nums.size(); i++)
indices[nums[i]].push_back(i);

int n = nums.size();
for (auto& [_, p] : indices) {
// 前后各加一个哨兵
int i0 = p[0];
p.insert(p.begin(), p.back() - n);
p.push_back(i0 + n);
}

for (int& i : queries) { // 注意这里是引用
auto& p = indices[nums[i]];
if (p.size() == 3) {
i = -1;
} else {
int j = ranges::lower_bound(p, i) - p.begin(); //找到此位置后 取最小
i = min(i - p[j - 1], p[j + 1] - i);
}
}
return queries;
}
};

前后缀 预处理记录 o n

class Solution {
public:
vector<int> solveQueries(vector<int>& nums, vector<int>& queries)

{
int n = nums.size();
vector<int> left(n), right(n);
unordered_map<int, int> pos;
for (int i = -n; i < n; i++) {
if (i >= 0) {
int j = pos[nums[i]];
left[i] = j;
// 对于左边的 j 来说,它的 right 就是 i
if (j >= 0) {
right[j] = i;
} else {
right[j + n] = i + n;
}
}
pos[nums[(i + n) % n]] = i;
}

for (int& i : queries) {
int l = left[i];
i = i - l == n ? -1 :min(i - l, right[i] - i);
}
return queries;
}
};

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

YOLOv13 CSPDarknet主干网络,梯度传播更顺畅

YOLOv13 CSPDarknet主干网络&#xff0c;梯度传播更顺畅 在工业质检产线毫秒级识别微小焊点缺陷、智能交通系统实时追踪百辆运动车辆、无人机巡检中稳定捕捉高压线上的绝缘子裂纹——这些场景对目标检测模型提出了严苛要求&#xff1a;既要快如闪电&#xff0c;又要稳如磐石。…

作者头像 李华
网站建设 2026/4/26 18:54:28

语音活动检测避坑指南:FSMN-VAD常见错误汇总

语音活动检测避坑指南&#xff1a;FSMN-VAD常见错误汇总 1. FSMN-VAD 离线语音端点检测控制台简介 你是否在处理长音频时&#xff0c;被大量无效静音段拖慢了后续语音识别的效率&#xff1f;是否希望自动切分录音中的有效语句&#xff0c;却苦于找不到稳定可靠的工具&#xf…

作者头像 李华
网站建设 2026/4/25 8:48:32

颠覆认知:BongoCat重新定义数字时代的人机交互革命

颠覆认知&#xff1a;BongoCat重新定义数字时代的人机交互革命 【免费下载链接】BongoCat 让呆萌可爱的 Bongo Cat 陪伴你的键盘敲击与鼠标操作&#xff0c;每一次输入都充满趣味与活力&#xff01; 项目地址: https://gitcode.com/gh_mirrors/bong/BongoCat 你是否曾在…

作者头像 李华
网站建设 2026/4/25 8:48:32

XV3DGS-UEPlugin高效应用完全指南:从问题解决到实践优化

XV3DGS-UEPlugin高效应用完全指南&#xff1a;从问题解决到实践优化 【免费下载链接】XV3DGS-UEPlugin 项目地址: https://gitcode.com/gh_mirrors/xv/XV3DGS-UEPlugin XV3DGS-UEPlugin是一款专为Unreal Engine 5设计的高斯泼溅模型可视化与管理工具&#xff0c;提供模…

作者头像 李华
网站建设 2026/4/25 12:26:34

亲测有效:YOLOv13官版镜像真实体验,目标检测效率翻倍

亲测有效&#xff1a;YOLOv13官版镜像真实体验&#xff0c;目标检测效率翻倍 最近在项目中尝试了刚刚发布的 YOLOv13 官版镜像&#xff0c;不得不说&#xff0c;这次升级带来的性能提升和部署便捷性让我眼前一亮。作为一个长期关注目标检测技术落地的开发者&#xff0c;我第一…

作者头像 李华
网站建设 2026/4/25 10:27:42

颠覆传统3D渲染:XV3DGS-UEPlugin如何让游戏开发者效率提升300%

颠覆传统3D渲染&#xff1a;XV3DGS-UEPlugin如何让游戏开发者效率提升300% 【免费下载链接】XV3DGS-UEPlugin 项目地址: https://gitcode.com/gh_mirrors/xv/XV3DGS-UEPlugin UE5和3D高斯渲染技术的结合正在改变游戏开发的格局。XV3DGS-UEPlugin作为一款强大的UE5插件&…

作者头像 李华