精華區beta Marginalman 關於我們 聯絡資訊
976. Largest Perimeter Triangle 給予一個陣列nums表示多個邊的長度,找出這些邊可以組成的最大三角形邊長,如果 不存在合法三角形則返回0。 Example 1: Input: nums = [2,1,2] Output: 5 思路: 1.對邊的長度做貪婪演算法。 2.先排序邊的大小。 3.從最大的邊開始往前拿,只要符合三角形的構成條件(小邊相加大於最大邊)就 返回三個邊的邊長。 4.如果沒有符合條件的三角形返回0。 JavaCode: class Solution { public int largestPerimeter(int[] nums) { Arrays.sort(nums); for(int i = nums.length - 1; i >= 2; i--){ if(nums[i] < nums[i - 1] + nums[i - 2]) return nums[i] + nums[i - 1] + nums[i - 2]; } return 0; } } 拒絕寫hard運動 -- https://i.imgur.com/He2OJUh.jpg -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.89.219 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1665540419.A.2E3.html
Ericz7000: 我想幹露西亞 10/12 10:07
Rushia: 幫內推GOOGLE 10/12 10:09
pandix: 大師 10/12 10:14