国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

976-三角形的最大周長

CNZPH / 2857人閱讀

摘要:前言的三角形的最大周長給定由一些正數代表長度組成的數組,返回由其中三個長度組成的面積不為零的三角形的最大周長。

前言

Weekly Contest 119的 三角形的最大周長:

給定由一些正數(代表長度)組成的數組 A,返回由其中三個長度組成的、面積不為零的三角形的最大周長。

如果不能形成任何面積不為零的三角形,返回 0

示例1:

輸入:[2,1,2]
輸出:5

示例2:

輸入:[1,2,1]
輸出:0

示例3:

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

示例4:

輸入:[3,6,2,3]
輸出:8

提示:

3 <= A.length <= 10000

1 <= A[i] <= 10^6

解題思路

本題可以拆成兩個問題去分析:

三條邊能否構成三角形

找出構成的三角形中周長最大的三角形

問題1可以利用三角形的特性:三角形的兩邊之和大于第三邊,即已知存在一個三角形,三條邊分別為abc,則同時滿足a+b>ca+c>bb+c>a
而問題只是一個簡單的判斷邏輯,并不復雜。這里可以結合問題1中三角形的特性來優化判斷邏輯,詳細內容請看實現代碼

實現代碼
    /**
     * 976. 三角形的最大周長
     * 判斷能否組成三角形的方法是兩邊之后要大于第三邊
     * @param A
     * @return
     */
    public int largestPerimeter(int[] A) {
        int result=0;
        //數組進行排序(從小到大)
        Arrays.sort(A);
        //倒序訪問數組,取出三個數字嘗試構建三角形
        for(int i=A.length-1;i>=0;i--){
            if(i-2>=0){//剩余可用的邊個數要不小于3個
                int a=A[i];
                int b=A[i-1];
                int c=A[i-2];
                //判斷三條邊能否組成三角形,判斷條件為兩之和大于第三邊
                if(a+b>c && a+c>b && b+c>a){
                    result=a+b+c;//直接找到能夠構成最大周長三角形的3條邊,中斷循環
                    break;
                }
            }else{//剩余的邊個數不夠中斷循環
                break;
            }
        }
        return result;
    }

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/72980.html

相關文章

  • Leetcode PHP題解--D62 976. Largest Perimeter Triangl

    摘要:思路對給定的數組進行降序排序,使最大的數字在前面。取最大的前三條,判斷任兩邊之和是否大于第三邊。是則返回周長即可。最終代碼若覺得本文章對你有用,歡迎用愛發電資助。 D62 976. Largest Perimeter Triangle 題目鏈接 976. Largest Perimeter Triangle 題目分析 給定數字數組,任取三條邊形成三角形,返回最大邊長。 思路 對給定的數...

    GHOST_349178 評論0 收藏0
  • 70道前端LeetCode題目集合及視頻講解(持續更新中...)

    前端LeetCode刷題 下面是已刷的題目的目錄。GitHub:https://github.com/cunzaizhuy...每日打卡更新中,歡迎關注。 數組類 26 刪除排序數組中的重復項 27 移除元素 35 搜索插入位置 66 加1 80 medium 刪除排序數組中的重復項2 88 合并兩個有序數組 167 兩數之和II - 輸入有序數組 118 楊輝三角 169 easy 求眾數 1...

    mayaohua 評論0 收藏0
  • 抽象類和模板方法模式

    摘要:抽象類作為多個子類的通用模板,子類在抽象類的基礎上進行擴展改造,但子類總體上會大致保留抽象類的行為方式。稍微專業一點的定義就是模板方法模式,在一個方法中定義一個算法的骨架,而將一些步驟延遲到子類中。 抽象方法和抽象類 抽象類:用abstract修飾符修飾的類,如: public abstract class GeneralService { } 抽象方法:用abstract修...

    only_do 評論0 收藏0
  • javascript與三角函數之二:圓周運動

    摘要:角度與弧度我們現實生活中使用的大都是角度,比如度度,但在計算機中的語言中,使用的都是弧度。我們在程序中,每次加的都是角度,所以需要轉化成弧度才能讓中三角函數中使用,代碼如下源碼及實現,請移步 我們看下我們通過三角函數要做出來的效果 showImg(https://segmentfault.com/img/bVS7yx?w=884&h=804); sin、cos、tan概念 為了直觀,我...

    xzavier 評論0 收藏0
  • 角形面積(YZOJ-1014)

    摘要:問題描述一個三角形的三邊長分別是,那么它的面積為,其中。輸入這三個數字,計算三角形的面積,四舍五入精確到位小數。保證能夠構成三角形,。 【問題描述】 一個三角形的三...

    wangbinke 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<