news 2026/6/18 6:47:49

leetcode 923. 3Sum With Multiplicity 三数之和的多种可能

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 923. 3Sum With Multiplicity 三数之和的多种可能

Problem: 923. 3Sum With Multiplicity 三数之和的多种可能

排序,哈希表记录每个数字的频次,双循环,拿到两个数字,最后一个数字相减得到,然后通过排列组合计算答案,需要考虑是否存在这样的情况,而且a, c不能重复的

Code

class Solution { public: const int modulo = 1e9 + 7; int threeSumMulti(vector<int>& arr, int target) { sort(arr.begin(), arr.end()); unordered_map<int, long long> ump; for(int& i : arr) { ump[i]++; } int n = arr.size(), a, c, f; unsigned long long ans = 0; for(int i = 0; i < n - 2; i++) { a = arr[i]; if(i > 0 && arr[i]==arr[i-1]) { continue; } for(int j = i + 1; j < n - 1; j++) { c = arr[j]; if(j > i + 1 && arr[j]==arr[j-1]) { continue; } f = target - a - c; if(f < c) { continue; } if(ump.count(f) != 0) { if(a == c && a == f) { if(ump[f] >= 3) { ans += ump[f] * (ump[f] - 1) * (ump[f] - 2) / 6; } else { continue; } } else if(a == c) { ans += ump[a] * (ump[a]-1) / 2 * ump[f]; } else if(c == f) { if(ump[f] >= 2) { ans += ump[f] * (ump[f] -1 ) / 2 * ump[a]; } else { continue; } } else if(a!=c && c!=f && a!=f){ ans += ump[f] * ump[a] * ump[c]; } ans %= modulo; } } } return ans; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/16 17:11:22

leetcode 925. Long Pressed Name 长按键入-耗时100

Problem: 925. Long Pressed Name 长按键入 耗时100%&#xff0c;双指针&#xff0c;若左右字符相等l; r&#xff0c;若r > 0 && typed[r-1]typed[r]则r&#xff0c;否则false&#xff0c;最后若while(r < n2 && typed[r-1]typed[r]) r;&#xff0c;if(l…

作者头像 李华
网站建设 2026/6/16 22:56:04

如何获得Agentic AI提示工程架构师认证?备考与实战经验

Agentic AI提示工程架构师认证全攻略&#xff1a;备考计划实战经验核心技巧 1. 标题 (Title) 从入门到持证&#xff1a;Agentic AI提示工程架构师认证备考实战指南Agentic AI提示工程架构师认证之路&#xff1a;我如何3个月从零基础到通过考试&#xff1f;成为AI架构师的敲门…

作者头像 李华
网站建设 2026/6/11 19:27:11

14.僵尸孤儿-进程状态

一个pcb既属于全局链表又属于这个队列这个队列也是双链表&#xff0c;只不过先进先出FIFO运行状态就是正在被cpu运行&#xff0c;或者准备好了随时等待被调度。 包括运行和就绪。一个进程要去读键盘就要转去另一个队列&#xff0c;如果这个设备没有活跃&#xff0c;就没有读到键…

作者头像 李华
网站建设 2026/6/15 7:30:23

MATLAB鸟鸣识别系统截图](https://example.com/gui_screenshot.png

基于MATLAB的鸟鸣识别系统gui 传统声音特征&#xff0c;如MFCC机器学习分类器 分类器有支持向量积svm&#xff0c;邻近knn&#xff0c;分类树tree等 深度学习方法主要是先提取语谱图&#xff0c;有短时傅立叶时频图&#xff0c;和梅尔时频图 然后用googlenet进行深度学习训练 结…

作者头像 李华
网站建设 2026/6/10 1:18:05

数据立方体技术演进:从传统BI到大数据分析的跨越

数据立方体技术演进&#xff1a;从传统BI到大数据分析的跨越 关键词&#xff1a;数据立方体、OLAP、大数据分析、维度建模、实时计算 摘要&#xff1a;数据立方体是数据分析领域的"瑞士军刀"&#xff0c;它用"多维切片"的魔法让复杂数据变得可感知、可操作…

作者头像 李华
网站建设 2026/5/26 22:02:36

multi function vehicle inverter

multi function vehicle inverter 车载多功能逆变器然后就有三角插了&#xff0c;可以插笔记本电脑&#xff0c;或者其他&#xff0c;但是不知道对车的电池损害大不大&#xff0c;比较接出来变成高电压了。

作者头像 李华