【题目】
给定由一些正数(代表长度)组成的数组 A,返回由其中三个长度组成的、面积不为零的三角形的最大周长。
如果不能形成任何面积不为零的三角形,返回 0。
【示例 1】
输入:[2,1,2]
输出:5
【示例 2】
输入:[1,2,1]
输出:0
【示例 3】
输入:[3,2,3,4]
输出:10
【示例 4】
输入:[3,6,2,3]
输出:8
【提示】
3 <= A.length <= 10000
1 <= A[i] <= 10^6
【代码】
【Python】
执行用时:
212 ms, 在所有 Python3 提交中击败了90.16%的用户
内存消耗:
16 MB, 在所有 Python3 提交中击败了5.18%的用户
class Solution:
def judge(self,a,b,c):
return a+b>c and b+c>a and a+c>b
def largestPerimeter(self, A: List[int]) -> int:
A.sort(reverse=True)
for i in range(len(A)-2):
if self.judge(A[i],A[i+1],A[i+2]):
return A[i]+A[i+1]+A[i+2]
return 0