1.1我对题目理解
1)不明白为什么1也算是一个符合条件的数字?
搜索到的百度的结果是:1没有质因子
2)求质因数分解后为2,3,5的数字,后面的数字可以由前面的数字相乘2,3,5得到,难点在于排序。

1.2他人的解法,动态规划
每一个数字可由前面的某个数字乘上2、3、5可得,
X(n+1) = min( x(a) * 2 , x(b) * 3 , x© * 5),表示取得最小的意思
被选中的数字要进行移动和更新
如何移动和更新呢?更新成为谁呢?
更新成为下一个数字,在上面的表达式子中,被选中的数字进行更新
如何得是上一次是谁更新了呢?依次相乘然后比较。
相当于这个序列中的每一个数字依次乘以2、3、5然后排序,最开始应该是同一个数字,
由于要使用这个序列中的每一个数字,所以应该使用数组将每次得到的结果保存起来。

class Solution {public:int nthUglyNumber(int n) {vector<int> dp(n,0);int a = 0, b = 0,c = 0;dp[0] = 1;for(int i = 1;i < n ;i++){dp[i] = min(min(dp[a]*2,dp[b]*3),dp[c]*5);if(dp[i] == dp[a]*2) a++;if(dp[i] == dp[b]*3) b++;if(dp[i] == dp[c]*5) c++;}return dp[n-1];}
};

2021-06-23Leetcode264.丑数相关推荐

  1. 剑指offer:丑数

    题目描述 把只包含质因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含质因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 解题思 ...

  2. 剑指offer:把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。

    问题:把只包含质因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含质因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. 通俗易懂的 ...

  3. 数据结构与算法--丑数

    找出排在第n位大的丑数 丑数:我们将只包含质因子 2,3,5的数称为丑数(ugly Number).求按从小到大的熟悉怒排列的低1500 个丑数.例如6,8 都是丑数,但是14 不是丑数,因为他包含质 ...

  4. 2021.06.03合并石子+能量项链

    2021.06.03合并石子+能量项链 题目描述 在一个圆形操场的四周摆放 N 堆石子,现要将石子有次序地合并成一堆,规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分. ...

  5. 2021.06.02税收和补贴问题

    2021.06.02税收和补贴问题 (题目来源:洛谷-P1023) 题目描述 每样商品的价格越低,其销量就会相应增大.现已知某种商品的成本及其在若干价位上的销量(产品不会低于成本销售),并假设相邻价位 ...

  6. usaco ★Humble Numbers 丑数

    ★Humble Numbers 丑数 对于一给定的素数集合 S = {p1, p2, ..., pK}, 来考虑那些质因数全部属于 S 的数的集合.这个集合包括,p1, p1p2, p1p1, 和 p ...

  7. 【剑指offer-Java版】34丑数

    丑数:返回第N个丑数 只包含因子 2 3 5的数称为丑数,第一个丑数是 1 采用辅助数组的方法,提高时间效率 – 下一个丑数一定是已有的丑数乘以2 或者 3 或者 5 得到的 public class ...

  8. java丑数算法_LintCode Java算法练习(4)-----丑数II

    题目:题目 1 = 2^0 * 3^0 * 5^0 2 = 2^1 * 3^0 * 5^0 3 = 2^0 * 3^1 *5^0 . . . 依次类推,这便是丑数 假设  uglyNumber = 2 ...

  9. AC日记——丑数 codevs 1246

    1246 丑数 USACO  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果 题目描述 Description 对于一给定的素数集合 ...

  10. 【剑指offer】丑数

    把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7. 习惯上我们把1当做是第一个丑数.求按从小到大的顺序的第N个丑数. leetcode上也 ...

最新文章

  1. OpenCV数据结构与基本绘图(Mat 类、Point类、Scalar类等)
  2. Sprint Application bootstrap的研究和调试
  3. Pycharm 提示:this license * has been cancelled - Python零基础入门教程
  4. java 内存指针_C指针和内存
  5. 埃尔米特(Hermite)插值及其MATLAB程序
  6. python datetime格式_python time和datetime常用写法格式
  7. hadoop学习使用
  8. 自动化测试辅助工具——FirePath
  9. C# 字符串转JSON格式
  10. 极小曲面壳体的静力学分析(ABAQUS)
  11. 基于ISIS路由协议的路由聚合
  12. 修改Java文件不用重启Tomcat服务
  13. 坚果Pro 电源键失效的处理
  14. 全向移动机器人运动参数校准
  15. 第二章 @Entity实例里常用的注解详解
  16. sublime教程html5,SublimeText开发html网站教程(一)
  17. wish新店快速出单的方法
  18. 计算机科学与技术专业导论3500,计算机科学与技术专业导论.docx
  19. 电信传输_第六章_光纤接入网
  20. 科技爱好者周刊:第 73 期

热门文章

  1. python SQLite数据库基本操作
  2. mysql取模_mysql 取模分表
  3. IDEA去除Mapper.xml中黄色警报和绿色背景
  4. 解决“设备和打印机”无法打开这个问题分享
  5. ac2100 反弹shell无法粘贴_手把手带你玩转NAS 篇二十一:小米Redmi AC2100路由器刷机padavan保姆级教程...
  6. linux服务器128g内存,如何处理Linux服务器内存过高?
  7. 【Kevin三连弹之三】Rust真的比C慢吗?进一步分析queen微测评
  8. Git报错解决:git@gitee.com: Permission denied (publickey).
  9. skywalking单节点部署
  10. c++(字符串操作 1)