454. 4Sum II
Solution
透過Map
public int fourSumCount(int[] A, int[] B, int[] C, int[] D) {
Map<Integer, Integer> map = new HashMap<>();
int N = A.length;
for(int i = 0; i < N; i++){
for(int j = 0; j < N; j++){
map.compute(A[i]+B[j], (k, v)->{
if(v == null) return 1;
else return v+1;
});
}
}
int ans = 0;
for(int i = 0; i < N; i++){
for(int j = 0; j < N; j++){
ans += map.getOrDefault(-1 * (C[i] + D[j]), 0);
}
}
return ans;
}
Last updated
Was this helpful?