基于visual Studio2013解决面试题之0701寻找丑数
来源:互联网 发布:飞鸟各投林 知乎 编辑:程序博客网 时间:2024/06/05 19:15
题目
解决代码及点评
/*我们把只包含因子 2、3 和 5 的数称作丑数(Ugly Number)。例如 6、8 都是丑数,但 14 不是,因为它包含因子 7。习惯上我们把 1 当做是第一个丑数。求按从小到大的顺序的第 1500 个丑数。*/#include <iostream>using namespace std;bool IsUgly(int nNum){ while (nNum % 2 == 0) { nNum /= 2; } while (nNum % 3 == 0) { nNum /= 3; } while (nNum % 5 == 0) { nNum /= 5; } if (nNum == 1) { return true; } else { return false; }}// 寻找丑数int GetUglyNum(int nMaxNum){ int i = 1; int nCount = 0; // 简单的循环,判断 while (nCount < nMaxNum) { i++;// 判断是不是丑数 if (IsUgly(i)) { //cout<<i<<" "; nCount++; } } return i; }int main(){ cout<<endl<<GetUglyNum(150)<<endl; system("pause"); return 0;}
代码下载及其运行
代码下载地址:http://download.csdn.net/detail/yincheng01/6704519
解压密码:c.itcast.cn
下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:
1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”
2)在下拉框中选择相应项目,项目名和博客编号一致
3)点击“本地Windows调试器”运行
程序运行结果
0 0
- 基于visual Studio2013解决面试题之0701寻找丑数
- 基于visual Studio2013解决面试题之0808寻找中间数
- 基于visual Studio2013解决面试题之0609寻找链表公共节点
- 基于visual Studio2013解决面试题之0510连续数之和
- 基于visual Studio2013解决面试题之0608找出两个只出现一次的数
- 基于visual Studio2013解决面试题之0908最大连续数字串
- 基于visual Studio2013解决面试题之0201二叉树转链表
- 基于visual Studio2013解决面试题之0203栈实现
- 基于visual Studio2013解决面试题之0205查找路径
- 基于visual Studio2013解决面试题之0207单词翻转
- 基于visual Studio2013解决面试题之0202上下排
- 基于visual Studio2013解决面试题之0301累加
- 基于visual Studio2013解决面试题之0303数组求和
- 基于visual Studio2013解决面试题之0308Fibonacci数列
- 基于visual Studio2013解决面试题之0403串联字符串
- 基于visual Studio2013解决面试题之0407数组差
- 基于visual Studio2013解决面试题之0501上台阶
- 基于visual Studio2013解决面试题之0504单链表逆序
- Zend内存管理器
- the QlistWidght tutorial
- KMP算法之我见(加深与优化)
- The State Machine Framework
- 基于visual Studio2013解决面试题之0610删除重复字符串
- 基于visual Studio2013解决面试题之0701寻找丑数
- html5游戏开发的基础设置操作
- vb.net反射机制
- Java中ThreadLocal分析
- 基于visual Studio2013解决面试题之0702输出数字
- MAX SDK的INode的变换矩阵,以及Object的一些常识
- C - Cube painting
- list 转换成json
- 基于visual Studio2013解决面试题之0703翻转栈