丑数
2016-04-10 09:32
225 查看
题目描述
把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。class Solution { public: int min2(int a,int b,int c) { int min1=std::min(a,b); return std::min(min1,c); } int GetUglyNumber_Solution(int index) { int* c=new int[index]; int i=1; if(index<=0) return 0; c[0]=1; int *p1=c; int *p2=c; int *p3=c while(i<index) { //++i; c[i]=min2(2*(*p1),3*(*p2),5*(*p3)); while(2*(*p1)<=c[i]) ++p1; while(3*(*p2)<=c[i]) ++p2; while(5*(*p3)<=c[i]) ++p3; ++i; } return c[index-1]; } };
相关文章推荐
- 见龙在田!告诉你什么是真正的IT运维服务之道
- 后台拿webshell方法(2)
- 阻塞队列和并发队列
- SQL注入初了解
- 解决算法问题的思路 —— 从问题描述到数学表达
- matlab size
- 二叉树
- 安装MySQL
- 1.Two Sum(双指针的使用)
- 【机器学习详解】矩阵奇异值分解(SVD)及其应用
- PHP设计模式——訪问者模式
- 用PS制作网站上的动态广告栏
- tomcat(4)Tomcat的默认连接器
- 快速查看Mysql数据库数据文件存放地址
- myeclipse 自动添加头时间,作者,文件注释
- LightOJ1089
- 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
- Educational Codeforces Round 11 C. Hard Process 二分
- shuffle 过程map与reduce交换数据过程的关键
- Android 深入理解Android中的自定义属性