您的位置 首页 > 腾讯云社区

剑指offer——丑数---AI那点小事

概述

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

C++ AC代码#include <iostream> #include <cmath> #include <vector> using namespace std; class Solution { public: int GetUglyNumber_Solution(int index) { if(index < 7){ return index; } vector<int> ans(index); ans[0] = 1; int t2 = 0,t3 = 0,t5 = 0; for(int i = 1 ; i < index ; i++){ ans[i] = min(ans[t2]*2,min(ans[t3]*3,ans[t5]*5)); if(ans[t2]*2 == ans[i]){ t2++; } if(ans[t3]*3 == ans[i]){ t3++; } if(ans[t5]*5 == ans[i]){ t5++; } } return ans[index-1]; } };

---来自腾讯云社区的---AI那点小事

关于作者: 瞎采新闻

这里可以显示个人介绍!这里可以显示个人介绍!

热门文章

留言与评论(共有 0 条评论)
   
验证码: