611. 有效三角形的个数
难度中等
给定一个包含非负整数的数组 nums
,返回其中可以组成三角形三条边的三元组个数。
示例 1:
输入: nums = [2,2,3,4] 输出: 3 解释:有效的组合是: 2,3,4 (使用第一个 2) 2,3,4 (使用第二个 2) 2,2,3
示例 2:
输入: nums = [4,2,3,4] 输出: 4
class Solution: def triangleNumber(self, nums: List[int]) -> int: nums = sorted(nums) print(nums) n = len(nums) res = 0 for i in range(0,n)[::-1]: l = 0 r = i-1 while l<r: if nums[l]+nums[r]> nums[i]: res+=(r-l) r-=1 else: l+=1 return res