您的位置:首页 > 编程语言 > C语言/C++

Ugly Number II(求第N个丑数)

2016-04-04 13:00 357 查看
int getmin(int a,int b,int c){if(a>b){if(b>c)return c;elsereturn b;}else{if(a>c)return c;return a;}}class Solution {public:int nthUglyNumber(int n) {if(n==1)return 1;int i,j,k;int a[100000];int pos1=0;int pos2=0;int pos3=0;int factor1=2,factor2=3,factor3=5;a[0]=1;for(i=1;i<n;i++){a[i]=getmin(factor1,factor2,factor3);if(factor1==a[i]){factor1=2*a[++pos1];}if(factor2==a[i]){factor2=3*a[++pos2];}if(factor3==a[i]){factor3=5*a[++pos3];}}return a[n-1];}};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  动态规划 C++