代码随想录第七天 2023.7.18
题目链接:454. 四数相加 II - 力扣(LeetCode)https://leetcode.cn/problems/4sum-ii/
代码如下:
class Solution {
public:
int fourSumCount(vector<int>& nums1, vector<int>& nums2, vector<int>& nums3, vector<int>& nums4) {
unordered_map<int,int> umap;
for(int num1: nums1){
for(int num2: nums2){
umap[num1+num2]++;
}
}
int count=0;
for(int num3: nums3){
for(int num4: nums4){
int target=0-(num3+num4);
if(umap.find(target)!=umap.end()){
count+=umap[target];
}
}
}
return count;
}
};
注意:
1.本题的思路是用map这种哈希表,a数组和b数组元素相加的和存放在map的key值,value存放出现次数,c数组和d数组元素相加的和,在map中查找0-(c+d)是否出现过