LeetCode 264.丑数 II(动态规划)
题目描述
编写一个程序,找出第 n 个丑数。
丑数就是只包含质因数 2, 3, 5 的正整数。
示例:
输入: n = 10
输出: 12
解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。
说明:
1 是丑数。
n 不超过1690。
思路
详见链接
代码
class Solution:def nthUglyNumber(self,n:int) -> int:dp = [0]*ndp[0] = 1p2 = 0p3 = 0p5 = 0for i in range(1,n):dp[i] = min(2*dp[p2] , 3*dp[p3] , 5*dp[p5])if dp[i] >= 2*dp[p2]:p2 += 1if dp[i] >= 3*dp[p3]:p3 += 1if dp[i] >= 5*dp[p5]:p5 += 1print(dp)return dp[-1]
test = Solution()
test.nthUglyNumber(10)
效果
LeetCode 264.丑数 II(动态规划)相关推荐
- 86. Leetcode 264. 丑数 II (动态规划-基础题)
给你一个整数 n ,请你找出并返回第 n 个 丑数 .丑数 就是只包含质因数 2.3 和/或 5 的正整数.示例 1:输入:n = 10 输出:12 解释:[1, 2, 3, 4, 5, 6, 8, ...
- leetcode - 264. 丑数 II
264. 丑数 II -------------------------------------------- 编写一个程序,找出第 n 个丑数. 丑数就是只包含质因数 2, 3, 5 的正整数. 示 ...
- LeetCode 264. 丑数 II
264. 丑数 II Ideas 竟然没想到用小根堆,白学了,再把小根堆抄一遍. Code Python class Solution:def nthUglyNumber(self, n: int) ...
- Leetcode 264. 丑数 II 解题思路及C++实现
方法一:暴力解法 解题思路: 直接从整数1开始,不断递增,判断该数字是否为丑数(专门写一个判断是否为丑数的函数),当遇到一个丑数,则计数值加1,直至遇到n个丑数为止. 当n很大时,这种暴力解法会遇到 ...
- 78. Leetcode 264. 丑数 II (堆-技巧二-多路归并)
给你一个整数 n ,请你找出并返回第 n 个 丑数 .丑数 就是只包含质因数 2.3 和/或 5 的正整数.示例 1:输入:n = 10 输出:12 解释:[1, 2, 3, 4, 5, 6, 8, ...
- leetcode 264. 丑数 II(堆)
给你一个整数 n ,请你找出并返回第 n 个 丑数 . 丑数 就是只包含质因数 2.3 和/或 5 的正整数. 示例 1: 输入:n = 10 输出:12 解释:[1, 2, 3, 4, 5, 6, ...
- LeetCode 263. 丑数 264. 丑数 II(DP)
文章目录 1. LeetCode 263. 丑数 解题 2. LeetCode 264. 丑数 II DP解题 1. LeetCode 263. 丑数 编写一个程序判断给定的数是否为丑数. 丑数就是只 ...
- 693. 交替位二进制数 / 227. 基本计算器 II / 264. 丑数 II
693. 交替位二进制数[简单题][每日一题] 思路:[位运算] 排除特殊情况n=1,此时return true. 将n转为二进制字符串,依次将相邻两位数字进行异或运算. 异或运算的结果为flag,如 ...
- 【LeetCode】263.丑数 264. 丑数 II
I. 263. 丑数(是否为丑数) 一.题目描述 编写一个程序判断给定的数是否为丑数. 丑数就是只包含质因数 2, 3, 5 的正整数. 示例 1: 输入: 6 输出: true 解释: 6 = 2 ...
最新文章
- SQL SERVER的锁机制(三)——概述(锁与事务隔离级别)
- 【数据结构】顺序表的应用(2)(C语言)
- 又美又飒!这位985大学小姐姐,堪称今年最强博士后!
- java常见的异常类型_Java几种常见的异常类型
- 日照智能化乳品产业园签约 农民丰收节交易会对话乡村振兴
- 【PAT - 甲级 - 1018】Public Bike Management (带权最短路,多条最短路中加条件,DFS)
- (52)多路时钟复用FPGA如何约束一(片外时钟复用约束)
- 2017江苏事业单位计算机类,2017年上半年江苏事业单位计算机岗真题
- python教程吾爱破解_2020年最新python入门到精通教程
- 一种使用SOC精确控制脉冲的方法
- VCenter 5.5 数据库过大造成的问题和解决方法
- css3ps插件,CSS3Ps(PS图层转换插件) V1.0 官方版
- 腾达无线路由器怎么建立服务器,如何在腾达建立无线路由器 | 192.168.1.1手机登陆...
- linux如何查找下一个
- python opencv 二维码定位识别
- pest分析和swot分析的区别
- 一杯1CUP:区块链科技与投证生态加持的福鼎一杯与Chain++
- 训练小米叫,让狗狗叫还真的不容易!
- cms网站模板php修改,帝国CMS后台模板开发修改
- 即将开源,码晒客/疯狂创意二维码,个性二维码底层。
热门文章
- mysql 刷新二进制日志_mysql binglog 二进制日志文件
- ucdavis计算机科学专业,UCDavis的CS「加州大学戴维斯分校计算机科学专业」
- 21天学通java 3_《21天学通Java》PDF 下载
- 关于计算机工作的诗歌,提高计算机工作及上网效率的方法
- mysql c函数大全_Mysql 函数大全
- 字体编辑器_三款好用的字体编辑器分享,让您拥有属于自己的字体
- 使用GDAL对HDF数据进行geoloc校正
- GDAL对空间数据的管理
- 深入浅出Docker(五):基于Fig搭建开发环境
- In App Purchases 入门