Leetcode每日一题
题目链接: 976. 三角形的最大周长
难度: 简单
解题思路: 采用一种基于贪心的策略,将数组排好序后从大到小设置一个滑动窗口,窗口大小为3。判断是否可以组成三角形,第一个组成的三角形极为最大周长的三角形。
题解:
class Solution:
def largestPerimeter(self, A: List[int]) -> int:
A.sort()
max_area = 0
for i in reversed(range(1, len(A) - 1)):
if A[i] + A[i - 1] > A[i + 1]:
max_area = max(max_area, A[i - 1] + A[i] + A[i + 1])
break
return max_area