leetcode 2

題目

給你一個(gè)整數(shù) n ,請你找出并返回第 n 個(gè) 丑數(shù) 。

丑數(shù) 就是只包含質(zhì)因數(shù) 2、3 和/或 5 的正整數(shù)。

示例 1:

輸入:n = 10
輸出:12
解釋:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 個(gè)丑數(shù)組成的序列。
示例 2:

輸入:n = 1
輸出:1
解釋:1 通常被視為丑數(shù)。

代碼

func nthUglyNumber(n int) int {
    dp := make([]int,n)
    dp[0]=1
    p2,p3,p5:=0,0,0
    var p *int
    for i:=1;i<n;i++{
        v := dp[p2]*2
        p = &p2
        if v > dp[p3]*3{
            v=dp[p3]*3
            p = &p3
        }
        if v > dp[p5]*5{
            v = dp[p5]*5
            p = &p5
        }
       
        *p++
        if v > dp[i-1]{
            dp[i]=v
        }else{
            i--
        }
    }
   
    return dp[n-1]
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容