class Solution {
public:
//将四个组分为两组 即时间复杂度n^4-->2*n^2
int fourSumCount(vector<int>& A, vector<int>& B, vector<int>& C, vector<int>& D) {
unordered_map<int, int> countAB;//将ab组的和与出现的次数映射起来
for (int u: A)
for (int v: B)
++countAB[u + v];
int ans = 0;
for (int u: C)
for (int v: D)
if (countAB.count(-u - v))//是否出现过
ans += countAB[-u - v];//累加出现的次数
return ans;
}
};
力扣每日一题——四数相加Ⅱ
最新推荐文章于 2024-03-03 11:48:18 发布