題目連結:
題目意譯:
你被給定一個索引值從 0 開始的正整數陣列 nums。請找到滿足以下條件的三元組 (i, j, k) 之數量:
0 ≦ i < j < k < nums.length
nums[i] nums[j] 和 nums[k] 彼此相異。
換句話說,nums[i] != nums[j] 、 nums[i] != nums[k] 且 nums[j] != nums[k]。
回傳滿足條件的三元組之數量。
限制:
3 ≦ nums.length ≦ 100
1 ≦ nums[i] ≦ 1000
範例測資:
範例 1:
輸入: nums = [4,4,2,4,3]
輸出: 3
解釋: 以下三元組有滿足條件:
- (0, 2, 4) 因為 4 != 2 != 3
- (1, 2, 4) 因為 4 != 2 != 3
- (2, 3, 4) 因為 2 != 4 != 3
由於有 3 個三元組,所以我們回傳 3。
注意到 (2, 0, 4) 不是一個合法的三元組,因為 2 > 0。
範例 2:
輸入: nums = [1,1,1,1,1]
輸出: 0
解釋: 沒有任何三元組滿足條件,所以我們回傳 0。
解題思維:
因為 nums 的長度也只到 100 個數字,因此直接窮舉所有可能的三元組並檢查即可。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。