题目链接
解题思路:
- 用一个哈希表来存储数组C和D当中所有可能出现的和的次数
- 遍历数组A和B,看看是否有满足
c+d==-(a+b)
即可。
class Solution {
public:
int fourSumCount(vector& A, vector& B, vector& C, vector& D) {
unordered_map cnt;
int ans = 0;
for(auto c : C){
for(auto d : D){
cnt[c+d]++;
}
}
for(auto a:A){
for(auto b:B){
ans += cnt[-(a+b)];
}
}
return ans;
}
};