From e0d5de577e45005f3575e0d36e023f1b0c4d5c38 Mon Sep 17 00:00:00 2001 From: Tien Nguyen <95487001+tiennguyen2310@users.noreply.github.com> Date: Sat, 27 Sep 2025 22:20:53 -0400 Subject: [PATCH] Create LargestPerimeterTriangle.java --- .../leetcode/LargestPerimeterTriangle.java | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 src/codingquestions/leetcode/LargestPerimeterTriangle.java diff --git a/src/codingquestions/leetcode/LargestPerimeterTriangle.java b/src/codingquestions/leetcode/LargestPerimeterTriangle.java new file mode 100644 index 0000000..67ed693 --- /dev/null +++ b/src/codingquestions/leetcode/LargestPerimeterTriangle.java @@ -0,0 +1,42 @@ +/* +976. Largest Perimeter Triangle +Solved +Easy +Topics +premium lock icon +Companies +Given an integer array nums, return the largest perimeter of a triangle with a non-zero area, formed from three of these lengths. If it is impossible to form any triangle of a non-zero area, return 0. + + + +Example 1: + +Input: nums = [2,1,2] +Output: 5 +Explanation: You can form a triangle with three side lengths: 1, 2, and 2. +Example 2: + +Input: nums = [1,2,1,10] +Output: 0 +Explanation: +You cannot use the side lengths 1, 1, and 2 to form a triangle. +You cannot use the side lengths 1, 1, and 10 to form a triangle. +You cannot use the side lengths 1, 2, and 10 to form a triangle. +As we cannot use any three side lengths to form a triangle of non-zero area, we return 0. + + +Constraints: + +3 <= nums.length <= 104 +1 <= nums[i] <= 106 +*/ +class Solution { + public int largestPerimeter(int[] nums) { + Arrays.sort(nums); + for(int i = nums.length - 3; i >= 0; i--){ + if(nums[i] + nums[i + 1] > nums[i + 2]) + return nums[i] + nums[i + 1] + nums[i + 2]; + } + return 0; + } +}