LeetCode之Ugly Number II
2015-09-02 15:41
232 查看
/*根据提示,保存一个有序的丑数数组,然后通过不断乘以2,3,5, 从中选出最小的数作为下一个丑数。*/ class Solution { public: int nthUglyNumber(int n) { vector<int> uglies(1, 1); //uglies.reserve(n); int i2(0), i3(0), i5(0); while(uglies.size() < n){ int p2 = 2 * uglies[i2], p3 = 3 * uglies[i3], p5 = 5 * uglies[i5]; int res = min(p2, min(p3, p5)); if(res == p2) ++i2; if(res == p3) ++i3; if(res == p5) ++i5; uglies.push_back(res); } return uglies.back(); } };
相关文章推荐
- CSS伪类的使用
- I18N、L10N、G11N
- Android编程规范不完全指南
- 简单计算器
- 记录下学习日志
- Android Canvas绘图详解
- CocoaPods(4)——配置使用详解
- mysql cluster管理节点配置详解
- POJ 3250 Bad Hair Day(单调栈)
- 卡特兰数总结
- Citrix XenDesktop 7.6 VDA TechPreview版 交付 Windows 10
- Hybrid App
- informatica 错误:rep_61100,在此位置找到的存储库名称与所需名称不匹配
- 如何使用 Datadog 监控 Nginx
- 学艺不精 - 记一次性能问题排查
- java工厂设计模式
- php获取网络xml
- shell中的分号(;)
- freemarker之配置
- 详解协方差与协方差矩阵