• 力扣做题 09. 第 k 个数


    这题主要难度还是理解题意,找到规律,以及实践
     

    有些数的素因子只有 3,5,7,请设计一个算法找出第 k 个数。注意,不是必须有这些素因子,而是必须不包含其他的素因子。例如,前几个数按顺序应该是 1,3,5,7,9,15,21。

    示例 1:

    输入: k = 5

    输出: 9

    来源:力扣(LeetCode)
    链接:https://leetcode.cn/problems/get-kth-magic-number-lcci
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

    /**
     * @param {number} k
     * @return {number}
     */
    var getKthMagicNumber = function(k) {
        //这题主要难度还是理解题意,找到规律
        //3个指针,p1,p2,p3,不停的比较,谁最小指针就右移
        // f(n){
        //     Math.min(s(p1)*3,s(p2)*5,s(p3)*7) 
        // }
        const arr=[1]
        let p1=0,p2=0,p3=0;
    
        for(let i=0;i<k-1;i++){
            let num1=arr[p1]*3
            let num2=arr[p2]*5
            let num3=arr[p3]*7
            let min=Math.min(num1,num2,num3)
           if(min===num1){
                p1++
           }
           if(min===num2){
                p2++
           }
           if(min===num3){
               p3++
           }
           arr.push(min)
        }
           console.log(arr)
        return arr[k-1]
    };
  • 相关阅读:
    PAT 1036 Boys vs Girls (25分) 比大小而已
    idea创建maven项目慢的原因以及解决方案
    git diff 理解
    git status 命令详解
    java注解
    单例模式
    io分类
    数据库设计的范式
    mysql约束
    mysql去重复关键字distinct的用法
  • 原文地址:https://www.cnblogs.com/caoke/p/16737716.html
Copyright © 2020-2023  润新知