1.1 KiB
1.1 KiB
class Solution {
public:
int countQuadruplets(vector<int>& nums) {
int n = nums.size();
int ans = 0;
for (int a = 0; a < n; ++a) {
for (int b = a + 1; b < n; ++b) {
for (int c = b + 1; c < n; ++c) {
for (int d = c + 1; d < n; ++d) {
if (nums[a] + nums[b] + nums[c] == nums[d]) {
++ans;
}
}
}
}
}
return ans;
}
};
class Solution {
public:
int countQuadruplets(vector<int>& nums) {
int n = nums.size();
int ans = 0;
unordered_map<int, int> cnt;
for (int c = n - 2; c >= 2; --c) {
++cnt[nums[c + 1]];
for (int a = 0; a < c; ++a) {
for (int b = a + 1; b < c; ++b) {
if (int sum = nums[a] + nums[b] + nums[c]; cnt.count(sum)) {
ans += cnt[sum];
}
}
}
}
return ans;
}
};