news 2026/8/19 11:08:13

四数相加贰——哈希表

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
四数相加贰——哈希表

给你四个整数数组nums1nums2nums3nums4,数组长度都是n,请你计算有多少个元组(i, j, k, l)能满足:

  • 0 <= i, j, k, l < n
  • nums1[i] + nums2[j] + nums3[k] + nums4[l] == 0

示例 1:

输入:nums1 = [1,2], nums2 = [-2,-1], nums3 = [-1,2], nums4 = [0,2]输出:2解释:两个元组如下: 1. (0, 0, 0, 1) -> nums1[0] + nums2[0] + nums3[0] + nums4[1] = 1 + (-2) + (-1) + 2 = 0 2. (1, 1, 0, 0) -> nums1[1] + nums2[1] + nums3[0] + nums4[0] = 2 + (-1) + (-1) + 0 = 0

思路

用哈希表记录 nums1+nums2 的所有两数之和出现次数,再遍历 nums3+nums4 查找是否存在能与之凑成 0 的相反数,从而快速统计四数和为 0 的组合数量。

from collections import defaultdict from typing import List class Solution: def fourSumCount(self, nums1: List[int], nums2: List[int], nums3: List[int], nums4: List[int]) -> int: d=defaultdict(int) res=0 for n1 in nums1: for n2 in nums2: d[n1+n2]+=1 for n3 in nums3: for n4 in nums4: res+=d[-(n3+n4)] return res
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/19 21:17:12

OpenMower机器人割草机固件测试实战指南

OpenMower机器人割草机固件测试实战指南 【免费下载链接】OpenMower Lets upgrade cheap off-the-shelf robotic mowers to modern, smart RTK GPS based lawn mowing robots! 项目地址: https://gitcode.com/GitHub_Trending/op/OpenMower 在智能家居设备快速发展的今天…

作者头像 李华
网站建设 2026/8/18 2:25:02

23、深入解析Kubernetes集群扩展与高级网络

深入解析Kubernetes集群扩展与高级网络 1. Kubernetes集群扩展概述 在处理Kubernetes集群扩展时,涉及多个关键方面。水平Pod自动缩放器(Horizontal Pod Autoscaler)可依据CPU利用率或其他指标自动管理运行中的Pod数量。在自动缩放的背景下,还需要正确且安全地执行滚动更新…

作者头像 李华
网站建设 2026/8/19 17:58:24

Many Notes:打造高效云端笔记的终极解决方案

Many Notes&#xff1a;打造高效云端笔记的终极解决方案 【免费下载链接】many-notes Markdown note-taking app designed for simplicity 项目地址: https://gitcode.com/gh_mirrors/ma/many-notes 在信息爆炸的时代&#xff0c;一个优秀的笔记应用能够帮助你从繁杂的信…

作者头像 李华
网站建设 2026/8/18 14:39:38

TypeScript:现代前端开发的类型约束者

TypeScript&#xff1a;现代前端开发的类型约束者 1. 为什么要用TypeScript&#xff0c;能带来什么收益 1.1 类型安全&#xff1a;从源头减少错误 TypeScript的核心价值在于静态类型检查。通过在开发阶段捕获类型错误&#xff0c;可以显著减少运行时错误。根据微软的研究&#…

作者头像 李华
网站建设 2026/8/19 3:08:25

专业字体文件转换完全指南:ttctools使用详解

专业字体文件转换完全指南&#xff1a;ttctools使用详解 【免费下载链接】TTC与TTF字库文件转换教程及工具 ttctools是一款专为字体文件转换设计的开源工具&#xff0c;支持在TTC&#xff08;TrueType字体集合&#xff09;与TTF&#xff08;TrueType字体&#xff09;格式之间轻…

作者头像 李华