leetcode 611 有效三角形的個數

2021-10-19 09:47:55 字數 781 閱讀 7380

給定乙個包含非負整數的陣列,你的任務是統計其中可以組成三角形三條邊的三元組個數。

示例 1:

輸入: [2,2,3,4]

輸出: 3

解釋:有效的組合是:

2,3,4 (使用第乙個 2)

2,3,4 (使用第二個 2)

2,2,3

注意:

陣列長度不超過1000。

陣列裡整數的範圍為 [0, 1000]。

方法一:

對陣列進行排序

固定兩條邊,求其和sum,在陣列剩餘的範圍內,二分搜尋第乙個大於等於sum的索引位置index,也就是左邊界,則index左側就是滿足小於sum的第三條邊

累加左邊界

class

solution

//結束搜尋後,left == right, left-(j+1)為小於sum的元素個數

res +

= left-

(j +1)

;}}return res;}}

;

方法二:

排序從後向前固定一條邊,雙指標搜尋符合條件的區間,

[left…right, 固定邊…],如果nums[left] + nums[right] 滿足條件,那麼left右側的值都滿足條件,累加right-left

class

solution

else}}

return res;}}

;

611 有效三角形的個數

題目描述 給定乙個包含非負整數的陣列,你的任務是統計其中可以組成三角形三條邊的三元組個數。示例 1 輸入 2,2,3,4 輸出 3 解釋 有效的組合是 2,3,4 使用第乙個 2 2,3,4 使用第二個 2 2,2,3 注意 陣列長度不超過1000。陣列裡整數的範圍為 0,1000 方法1 1 先對...

LeetCode 楊輝三角

給定乙個非負整數 numrows,生成楊輝三角的前 numrows 行,在楊輝三角中,每個數是它左上方和右上方的數的和。思路分析 1 第一行是固定的,只有乙個1。2 第二行也是固定的,有兩個1。3 任意一行的開頭結尾都是1。4 第 i 行一共有 i 列。5 第 i 行的第 j 列,該數字是根據 i ...

leetcode 有效三角形的個數

給定乙個包含非負整數的陣列,你的任務是統計其中可以組成三角形三條邊的三元組個數。示例 1 輸入 2,2,3,4 輸出 3 解釋 有效的組合是 2,3,4 使用第乙個 2 2,3,4 使用第二個 2 2,2,3 注意 陣列長度不超過1000。陣列裡整數的範圍為 0,1000 1.此題類似於求三數之和為...