1534. 統計好三元組 - 力扣(LeetCode)
給你一個整數數組?arr
?,以及?a
、b
?、c
?三個整數。請你統計其中好三元組的數量。
如果三元組?(arr[i], arr[j], arr[k])
?滿足下列全部條件,則認為它是一個?好三元組?。
0 <= i < j < k <?arr.length
|arr[i] - arr[j]| <= a
|arr[j] - arr[k]| <= b
|arr[i] - arr[k]| <= c
其中?|x|
?表示?x
?的絕對值。
返回?好三元組的數量?。
思路:暴力解法😀
先從左右兩端確定i、k位置,在從中間遍歷
class Solution {
public:int countGoodTriplets(vector<int>& arr, int a, int b, int c) {//先確定兩端i、k位置int res=0;for(int i=0;i<arr.size();i++){for(int k=arr.size()-1;k>i;k--){if(abs(arr[i]-arr[k])<=c){for(int j=i+1;j<k;j++){if(abs(arr[j]-arr[k])<=b&&abs(arr[i]-arr[j])<=a)res++;} }}}return res;}
};