Leetcode 611 javascript Valid Triangle Number

pimkle發表於2018-11-14

思路

先從小到大排序,再3層遍歷 只需要判斷第 3 個數不要大於或等於前 2 個數之和即可。

原始碼

/**
 * @param {number[]} nums
 * @return {number}
 */
var triangleNumber = function(nums) {
    let len = nums.length;
    if(len < 3){
        return 0;
    }
    let count = 0;
    nums.sort((a, b) => a - b);
    for(let i = 0; i < len; ++i){
        for(let j = i + 1; j < len; ++j){
            for(let k = j + 1; k < len; ++k){
                if(nums[k] >= nums[i] + nums[j]){
                    break;
                }
                else{
                    count++;
                }
            }
        }
    }
    return count;
};
複製程式碼

相關文章