丑数

丑数

http://www.nowcoder.com/questionTerminal/6aa9e04fc3794f68acf8778237ba065b

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

分析思路:

代码实现:

public class UglyNumber {
    public int GetUglyNumber_Solution(int index) {
        if (index == 0) {
            return 0;
        }
        //因子为2
        int x = 0;
        //因子为3
        int y = 0;
        //因子为5
        int z = 0;
        //结果
        int[] res = new int[index];
        res[0] = 1;
        for (int i = 1; i < index; i++) {
            res[i] = Math.min(res[x] * 2, Math.min(res[y] * 3, res[z] * 5));
            if (res[i] == res[x] * 2) {
                x++;
            }
            if (res[i] == res[y] * 3) {
                y++;
            }
            if (res[i] == res[z] * 5) {
                z++;
            }
        }
        return res[index - 1];
    }
}
全部评论

相关推荐

10-15 15:00
潍坊学院 golang
跨考小白:这又不是官方
投递拼多多集团-PDD等公司10个岗位
点赞 评论 收藏
分享
霁华Tel:秋招结束了,好累。我自编了一篇对话,语言别人看不懂,我觉得有某种力量在控制我的身体,我明明觉得有些东西就在眼前,但身边的人却说啥也没有,有神秘人通过电视,手机等在暗暗的给我发信号,我有时候会突然觉得身体的某一部分不属于我了。面对不同的人或场合,我表现出不一样的自己,以至于都不知道自己到底是什么样子的人。我觉得我已经做的很好,不需要其他人的建议和批评,我有些时候难以控制的兴奋,但是呼吸都让人开心。
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务