Kimi    LeetCode 3480. 删除一个冲突对后最大子数组数目 C语言实现
以下是 LeetCode 3480 删除一个冲突对后最大子数组数目 的 C 语言实现。思路核心思路是枚举子数组右端点维护当前最严格和次严格的冲突限制1. 预处理将每个冲突对 (a, b) 按较大值即右端点分组。对于子数组右端点 right所有较大值为 right 的冲突对都会在此刻生效。2. 维护两个关键变量- maxLeft所有已生效冲突对中最大的左端点。以 right 结尾的合法子数组其左端点必须 maxLeft因此贡献 right - maxLeft 个合法子数组。- secondMaxLeft次大的左端点。如果删除 maxLeft 对应的那个冲突对限制会放宽到 secondMaxLeft此时能多获得 maxLeft - secondMaxLeft 个子数组。3. 记录收益用 gains[left] 数组记录“如果删除那个使 maxLeft 达到 left 的冲突对”所能获得的总额外子数组数。4. 最终答案合法子数组总数 max(gains)时间复杂度 O(n m)空间复杂度 O(n m)。C 代码c#include stdlib.hlong long maxSubarrays(int n, int** conflictingPairs, int conflictingPairsSize, int* conflictingPairsColSize) {// ---------- 1. 按冲突对的较大值右端点分组 ----------int* cnt (int*)calloc(n 1, sizeof(int));for (int i 0; i conflictingPairsSize; i) {int a conflictingPairs[i][0];int b conflictingPairs[i][1];int mx a b ? a : b; // 较大值作为右端点cnt[mx];}// 分配二维数组 conflicts[right] 存储所有左端点int** conflicts (int**)malloc((n 1) * sizeof(int*));for (int i 0; i n; i) {conflicts[i] (int*)malloc(cnt[i] * sizeof(int));}int* idx (int*)calloc(n 1, sizeof(int));for (int i 0; i conflictingPairsSize; i) {int a conflictingPairs[i][0];int b conflictingPairs[i][1];int mx a b ? a : b;int mn a b ? a : b; // 较小值作为左端点conflicts[mx][idx[mx]] mn;}// ---------- 2. 枚举右端点计算合法子数组和删除收益 ----------long long validSubarrays 0;int maxLeft 0; // 当前最严格的冲突左端点int secondMaxLeft 0; // 次严格的冲突左端点long long* gains (long long*)calloc(n 1, sizeof(long long));for (int right 1; right n; right) {// 加入所有以 right 为较大值的冲突对for (int j 0; j cnt[right]; j) {int left conflicts[right][j];if (left maxLeft) {secondMaxLeft maxLeft;maxLeft left;} else if (left secondMaxLeft) {secondMaxLeft left;}}// 以 right 结尾的合法子数组数量左端点必须 maxLeftvalidSubarrays (long long)(right - maxLeft);// 若删除当前 maxLeft 对应的冲突对能多获得的子数组数gains[maxLeft] (long long)(maxLeft - secondMaxLeft);}// ---------- 3. 找到删除一个冲突对后的最大收益 ----------long long maxGain 0;for (int i 0; i n; i) {if (gains[i] maxGain) {maxGain gains[i];}}// 释放内存LeetCode 不强制要求但良好习惯free(cnt);free(idx);for (int i 0; i n; i) {free(conflicts[i]);}free(conflicts);free(gains);return validSubarrays maxGain;}复杂度分析指标 复杂度时间 O(n m)其中 m conflictingPairsSize空间 O(n m)该解法通过一次线性扫描完成无需排序效率最优。

相关新闻

agno-6-rag

agno-6-rag

什么是 RAG RAG(Retrieval Augmented Generation,检索增强生成) 是一种结合了信息检索和文本生成的技术,它通过在生成回答之前先从外部知识源检索相关信息,来增强大型语言模型(LLM)的能力。 RAG…

2026/7/6 13:46:28阅读更多 →
耐火 + 高防护母线槽结构解析:加厚绝缘、厚铝合金外壳、密封散热设计要点

耐火 + 高防护母线槽结构解析:加厚绝缘、厚铝合金外壳、密封散热设计要点

耐火 高防护母线槽结构解析:加厚绝缘、厚铝合金外壳、密封散热设计要点一、前言化工厂区、地下车库、高层建筑消防配电,对母线槽耐火性能、防尘防水防护等级要求严苛。母线槽外壳、绝缘层、散热密封结构是防火防水能力的核心载体。本文结合扬中金展电气…

2026/7/6 13:41:27阅读更多 →
掌握Universal Extractor 2:从500+格式到高级提取完全指南

掌握Universal Extractor 2:从500+格式到高级提取完全指南

掌握Universal Extractor 2:从500格式到高级提取完全指南 【免费下载链接】UniExtract2 Universal Extractor 2 is a tool to extract files from any type of archive or installer. 项目地址: https://gitcode.com/gh_mirrors/un/UniExtract2 Universal Ex…

2026/7/6 13:41:27阅读更多 →
【吃透 MySQL InnoDB连载】第 3 章・InnoDB 锁机制

【吃透 MySQL InnoDB连载】第 3 章・InnoDB 锁机制

第 3 章 InnoDB 锁机制事务隔离解决了业务数据错乱、并发读写异常的表象问题,锁,是 InnoDB 实现事务隔离、协调并发竞争、保障数据一致性的核心底层支撑。上一章我们站在业务视角,梳理了更新丢失、脏读、不可重复读、幻读等线上并发故障现象&…

2026/7/6 14:51:40阅读更多 →
【关注可白嫖源码】--课程设计+毕业设计+springboot桂雯溪卡车运营平台管理系统[编号:project39458](案例分析)

【关注可白嫖源码】--课程设计+毕业设计+springboot桂雯溪卡车运营平台管理系统[编号:project39458](案例分析)

本文仅展示核心实现逻辑与部分代码片段,完整项目源码、配套文档、数据库脚本内容较多,篇幅有限无法全部放出。 有需要完整资源的同学,可以在评论区留言【资料或领源码】,我会一 一回复站内私信,发送完整文件 目录 摘 …

2026/7/6 14:51:40阅读更多 →
【关注可白嫖源码】--课程设计+毕业设计+springboot旅游路线APP[编号:project39867](案例分析)

【关注可白嫖源码】--课程设计+毕业设计+springboot旅游路线APP[编号:project39867](案例分析)

本文仅展示核心实现逻辑与部分代码片段,完整项目源码、配套文档、数据库脚本内容较多,篇幅有限无法全部放出。 有需要完整资源的同学,可以在评论区留言【资料或领源码】,我会一 一回复站内私信,发送完整文件 摘 要 在…

2026/7/6 14:51:40阅读更多 →
AI榨油灌装智能巡检机器人 Qt信创完整项目

AI榨油灌装智能巡检机器人 Qt信创完整项目

# AI榨油灌装智能巡检机器人 Qt信创完整项目 ## 项目定位 适配**银河麒麟、统信UOS ARM64/x86**信创工控机,面向**榨油灌装工**,AI车间巡检机器人上位管理系统;覆盖螺旋榨油机、滤油机、自动食用油灌装机全套产线监控、AI故障诊断、食品级标准化维保工单、油脂产线易损件台…

2026/7/6 14:51:40阅读更多 →
【VLM】MiniCPM-o 4.5:全双工实时交互

【VLM】MiniCPM-o 4.5:全双工实时交互

note MiniCPM-o 4.5的核心是Omni-Flow框架,它将多模态输入与输出沿共享时间轴对齐,把传统轮次交互转变为连续全双工过程。整个架构包含三个核心组件:多模态编码器、LLM主干、语音解码器。 文章目录note一、MiniCPM-o 4.5Reference一、MiniCP…

2026/7/6 14:51:40阅读更多 →
HAL_Delay 为什么不能在中断里调?

HAL_Delay 为什么不能在中断里调?

前言很多 STM32 新手写过这样的代码:void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) {HAL_Delay(50); // 按键消抖HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin); }下载后发现:按键按下去,程序卡死了。为什么 HAL_Delay 在 main 循环里用得…

2026/7/6 14:46:37阅读更多 →
从GitHub安全案例解析常见漏洞与防护实践

从GitHub安全案例解析常见漏洞与防护实践

1. 项目概述:从GitHub Trending看安全实战 最近在GitHub Trending上看到一个项目,叫 skills4/skills ,它因为一些安全漏洞案例被大家讨论。这其实是一个挺典型的场景:一个旨在展示或教授某种技能的仓库,本身却成了安…

2026/7/6 4:26:20阅读更多 →
MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

# MLT 2026启示:因果推理与概率建模驱动下一代LLM应用## 一、背景与挑战:从“黑箱预测”到“可信推理”2026年6月,第7届机器学习与趋势国际会议(MLT 2026)将在悉尼召开。会议议程中,“因果与可解释机器学习…

2026/7/6 2:48:33阅读更多 →
通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

1. 项目概述与漏洞背景最近在梳理一些历史OA系统的安全风险时,通达OA v11.6版本中的一个老漏洞又进入了我的视线。这个漏洞位于/general/bi_design/appcenter/report_bi.func.php文件中,是一个典型的SQL注入点。虽然这个漏洞的利用方式看起来并不复杂&am…

2026/7/6 0:10:35阅读更多 →
Seraphine:基于LCU API的英雄联盟智能游戏助手技术解析与应用指南

Seraphine:基于LCU API的英雄联盟智能游戏助手技术解析与应用指南

Seraphine:基于LCU API的英雄联盟智能游戏助手技术解析与应用指南 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 技术架构先行:官方接口的合规应用 你是否曾在BP阶段手忙脚乱&#x…

2026/7/6 0:03:39阅读更多 →
多协议远程连接管理工具mRemoteNG:告别混乱,统一你的远程桌面管理

多协议远程连接管理工具mRemoteNG:告别混乱,统一你的远程桌面管理

多协议远程连接管理工具mRemoteNG:告别混乱,统一你的远程桌面管理 【免费下载链接】mRemoteNG mRemoteNG is the next generation of mRemote, open source, tabbed, multi-protocol, remote connections manager. 项目地址: https://gitcode.com/gh_m…

2026/7/6 0:03:39阅读更多 →
COUNT(DISTINCT) 与 GROUP BY 去重统计:5 亿数据量下的性能实测与选型指南

COUNT(DISTINCT) 与 GROUP BY 去重统计:5 亿数据量下的性能实测与选型指南

COUNT(DISTINCT) 与 GROUP BY 去重统计:5 亿数据量下的性能实测与选型指南在数据分析和处理领域,去重统计是最基础也是最频繁使用的操作之一。当数据量达到亿级规模时,不同的去重统计方法在性能上可能产生天壤之别。本文将基于 5 亿行数据的实…

2026/7/6 0:03:39阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/6 4:45:01阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/6 4:45:01阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/6 4:45:03阅读更多 →