976. Треугольник с наибольшим периметром | решение на Java и JavaScript
Постановка задачи
Получив массив целых чисел nums
, верните наибольший периметр треугольника с ненулевой площадью, образованный из трех таких длин. Если невозможно составить какой-либо треугольник ненулевой площади, вернуть 0
.
Пример 1:
Input: nums = [2,1,2] Output: 5
Пример 2:
Input: nums = [1,2,1] Output: 0
Ограничения:
3 <= nums.length <= 104
1 <= nums[i] <= 106
Решение:
Ява
class Solution { public int largestPerimeter(int[] nums) { Arrays.sort(nums); for(int i=nums.length-1;i>1;i--){ if(nums[i]<nums[i-1]+nums[i-2]){ return nums[i]+nums[i-1]+nums[i-2]; } } return 0; } }
JS
/** * @param {number[]} nums * @return {number} */ var largestPerimeter = function(nums) { nums.sort((a,b)=>a-b); console.log(nums); console.log(nums.length); for(let i=nums.length-1;i>1;i--){ if(nums[i]<nums[i-1]+nums[i-2]){ return nums[i]+nums[i-1]+nums[i-2]; } } return 0; };
Удачного кодирования 💻