LeetCode 454 四数相加 II
class Solution {
public:
int fourSumCount(vector<int>& nums1, vector<int>& nums2, vector<int>& nums3, vector<int>& nums4) {
unordered_map<int, int> map;
for(int num1 : nums1) {
for(int num2 : nums2) {
map[num1 + num2] ++; //计算num1 + num2和的出现次数
}
}
int count = 0;
for(int num3 : nums3) {
for(int num4 : nums4) {
if(map.find(0 - (num3 + num4)) != map.end()) { //找到四数之和为0的下标
count += map[0 - (num3 + num4)];
}
}
}
return count;
}
};

浙公网安备 33010602011771号