news 2026/5/12 11:32:18

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/5/12 11:32:18

《Java并发编程的艺术》| 并发关键字与 JMM 核心规则

摘要&#xff1a;本篇文章围绕 Java 并发编程核心&#xff0c;梳理了 volatile、synchronized的实现原理与特性 &#xff1b;同时详解了 JMM&#xff0c;需配合 volatile、synchronized等工具&#xff0c;才能实现多线程下共享变量的原子性、可见性和有序性保障。 第2章 Java并…

作者头像 李华
网站建设 2026/5/11 18:30:44

93基于三菱PLC和组态王的兰花灌溉控制系统的农业农田应用

93基于三菱PLC和组态王的兰花灌溉控制系统的农业农田 兰花这种傲娇的植物&#xff0c;浇多了烂根&#xff0c;浇少了干枯&#xff0c;传统人工浇水能把种植户逼疯。去年在云南花卉基地看到师傅们凌晨三点打着手电筒浇水&#xff0c;我就琢磨着用三菱FX3U PLC搭个自动灌溉系统&…

作者头像 李华
网站建设 2026/5/10 21:25:51

专升本高数资源合集

2022专升本数学全程班&#xff08;完结&#xff09; 文件大小: 45.4GB内容特色: 2022专升本数学全程录播&#xff0c;45GB高清适用人群: 专科升本人群、数学基础薄弱需系统复习者核心价值: 考点全覆盖真题精讲&#xff0c;一站式冲刺高分下载链接: https://pan.quark.cn/s/05f…

作者头像 李华
网站建设 2026/5/9 14:26:12

动力学方程

考虑扰动的欠驱动船舶轨迹跟踪自适应滑模控制水面上的铁疙瘩要听话可不容易。三万吨的货轮在风浪里扭秧歌&#xff0c;舵机转得冒火星子还追不上预定航线&#xff0c;这场景让多少控制工程师头秃。传统PID那套在平静水域还行&#xff0c;遇上横风横流立马歇菜——这时候就得掏出…

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

基于博途1200 plc的V15软件邮件分拣控制系统

基于博途1200 plc的邮件分拣控制系统 软件版本:V15 凌晨三点的物流中心&#xff0c;传送带嗡嗡作响。三台S7-1200 PLC组成的控制系统正指挥着机械臂像老练的邮差&#xff0c;把不同地区的包裹准确投入对应格口。这套系统最有趣的地方在于——它把传统继电控制逻辑玩出了新花样…

作者头像 李华