久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
    分享

    Python | 動態(tài)規(guī)劃解決“返回第n個丑數(shù)”

     算法與編程之美 2021-04-28

    問題描述

    給你一個整數(shù) n ,請你找出并返回第 n  丑數(shù) 。丑數(shù) 就是只包含質(zhì)因數(shù) 2/ 5 的正整數(shù)。

     示例 1

    輸入:n = 10

    輸出:12

    解釋:[1, 2, 3, 4, 5, 6, 8, 9, 10, 12] 是由前 10 個丑數(shù)組成的序列。

    示例 2

    輸入:n = 1

    輸出:1

    解釋:1 通常被視為丑數(shù)。

    解決方案

    解決本題要用到的是動態(tài)規(guī)劃,同時要先知道什么是丑數(shù),題目也很明確的說明了丑數(shù)是什么,接下來就是實現(xiàn)在代碼方面找到丑數(shù),對于找丑數(shù)可以使用python的一次循環(huán)遍歷就可以得到需要的丑數(shù),因為只存在2,3,5這三個元素,遍歷過程中不會太復雜;知道了如何判斷丑數(shù)后就是進一步的丑數(shù)的變形方式,本題所使用的動態(tài)規(guī)劃并不是太復雜的動態(tài)規(guī)劃,這里要用到的新的變量“指針”(p2,p3,p5)此處pi是可以與i相乘的最小丑數(shù)的位置,設置了三個指針后從最小的開始,指針的移動表示在從大到小的尋找丑數(shù),nums[i]是由三個指針乘以相應的數(shù)得到的,把相對應的pi + 1表示沒有乘過次nums的最小丑數(shù)變大了,然后一個數(shù)一個數(shù)的加進數(shù)組中,直到遍歷結束。

    具體代碼如下:

    n = int(input())

    nums = [1]#放入第一個丑數(shù)1

    p2 = 0# 三個初始化指針

    p3 = 0

    p5 = 0

    for i in range(1, n):# 遍歷n得到所有丑數(shù)

        ushu = min(nums[p2] * 2, nums[p3] * 3, nums[p5] * 5)# 從小到大,按照丑數(shù)定義收集丑數(shù)

        nums.append(ushu)# 將丑數(shù)放進結果數(shù)組中

        if(nums[i] == nums[p2] * 2): p2 += 1# 指針移動,從小到大地尋找丑數(shù)

        if(nums[i] == nums[p3] * 3): p3 += 1

        if(nums[i] == nums[p5] * 5): p5 += 1

    print(nums[n-1])  # 返回第n個丑數(shù)

    運行效果:

    結語

    雖然是使用了動態(tài)規(guī)劃的方式解決了本題,但對與動態(tài)規(guī)劃還是處于模糊狀態(tài),還是會繼續(xù)學習關于動態(tài)規(guī)劃的知識,盡快熟悉并掌握運用,同時,做本題是要有一個清晰的思路,先得到什么,然后再做一步怎么樣的操作。

    實習編輯:李欣容

    稿件來源:深度學習與文旅應用實驗室(DLETA)

      轉藏 分享 獻花(0

      0條評論

      發(fā)表

      請遵守用戶 評論公約

      類似文章 更多

      主站蜘蛛池模板: 孕妇特级毛片ww无码内射| 国模吧无码一区二区三区| 在线A毛片免费视频观看| 亚洲一区二区三区影院| 亚洲高清国产拍精品青青草原| 欧美巨大极度另类| 理论片午午伦夜理片久久| 亚洲av永久无码精品天堂久久| 东京热大乱系列无码| 日日噜噜夜夜爽爽| 国产精品福利自产拍久久| 国产成人无码A区在线观看视频| 亚洲国产午夜精品福利| 国产欧美久久一区二区三区| 国产一区二区三区在线观看免费| 少妇厨房愉情理9仑片视频| 国产av无码专区亚洲av软件| 在线 国产 欧美 专区| 国产日韩一区二区四季| 人妻少妇精品久久| 无码AV无码免费一区二区| 妺妺窝人体色WWW在线一| 久青草国产97香蕉在线视频| 国产一区二区三区不卡AV | 又爽又黄又无遮掩的免费视频| 一本一本久久AA综合精品| 天天澡日日澡狠狠欧美老妇| 99草草国产熟女视频在线| 97精品亚成在人线免视频| 亚洲日韩精品无码一区二区三区| 男人把女人桶爽30分钟| 青青草无码免费一二三区| 久久亚洲男人第一AV网站| 亚洲色精品VR一区二区三区| 亚洲国产精品午夜福利| 八区精品色欲人妻综合网| 亚洲AV无码AV在线影院| 亚洲日韩久热中文字幕| 少妇上班人妻精品偷人| 一本一道久久A久久精品综合| 成 人色 网 站 欧美大片|