题目描述

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

 //使用遍历判断的方法
class Solution01 {
public:
int GetUglyNumber_Solution(int index) {
if (index < )return ;
int cnt = ;
for (int i = ; cnt < index; ++i)
{
if (isChouShu(i))
cnt++;
if (cnt == index)
return i;
}
}
bool isChouShu(int num)
{
while (num % == )
num /= ;
while (num % == )
num /= ;
while (num % == )
num /= ;
return num == ;
}
}; //使用保存数据法
class Solution02 {
public:
int GetUglyNumber_Solution(int index) {
if (index < )return ;
vector<int>v(index, );
v[] = ;
int p2, p3, p5, k = ;
p2 = p3 = p5 = ;
while (k < index)
{
v[k++] = min(min(v[p2] * , v[p3] * ), v[p5] * );
while (v[p2] * <= v[k - ])p2++;
while (v[p3] * <= v[k - ])p3++;
while (v[p5] * <= v[k - ])p5++;
}
return v[index - ];
}
};

最新文章

  1. ASP.NET MVC 从零开始 - 请求处理
  2. SharePoint 2013 搜索高级配置(Search Scope)
  3. Switch语句的case穿透
  4. ecshop 网站标题不更新或内容不更新
  5. Angular JS 学习之控制器
  6. web项目引用Java项目,连接报错error HTTP Status 500 - Servlet execution threw an exception
  7. C++ 基本知识
  8. BZOJ 1072: [SCOI2007]排列perm 状态压缩DP
  9. java中的类实现comparable接口 用于排序
  10. @@IDENTITY与SCOPE_IDENTITY的用法
  11. DELPHI TreeView 文件目录树和 设置节点图标 完整
  12. JS 图片预览功能
  13. Mongodb操作之查询(循序渐进对比SQL语句)
  14. mysql的if用法解决同一张数据表里面两个字段是否相等统计数据量。
  15. A1143. Lowest Common Ancestor
  16. JavaScript面向对象的三大特性
  17. PowerDesigner最基础的使用方法入门学习(二)
  18. eclipse闪退解决(转)
  19. golang-nsq消息队列应用
  20. react篇章-React State(状态)-组件都是真正隔离的

热门文章

  1. excel数据生成sql insert语句
  2. charles使用教程
  3. JasperReports教程
  4. FrameWork内核解析之PackageMS启动(一)下篇
  5. expect的模式
  6. ubuntu安装goland
  7. spring基于注解的事务控制
  8. Android开发 Butterknife使用方法总结
  9. 杭电多校第六场-J-Ridiculous Netizens
  10. 2、Python 接口框架