как получить числа, которые можно выразить в форме (3 ^ a) * (5 ^ b) * (7 ^ c) - PullRequest
0 голосов
/ 27 мая 2020

Числа пчел - это числа, которые могут быть выражены в форме (3^a)*(5^b)*(7^c). где a, b и c - положительные целые числа.

Задача:

Напишите функцию, которая принимает положительное целое число n и возвращает n-е наименьшее число пчелы

Пример:

bNumber(1)===1//(3^0)*(5^0)*(7^0)

bNumber(2)===3//(3^1)*(5^0)*(7^0)

bNumber(3)===5//(3^0)*(5^1)*(7^0)

bNumber(4)===7//(3^0)*(5^0)*(7^1)

bNumber(100)===33075//(3^3)*(5^2)*(7^2)

Моя попытка:

let bNumber = (n) => {
    var beenumbers = []
    var a = 0
    var b = 0
    var c = 0
    while (beenumbers.length <= n) {
        var beeSchema = Math.pow(3,a)*Math.pow(5,b)*Math.pow(7,c);
        var beeArray = [] 
        var bee = Math.min((Math.pow(3, a + 1) * Math.pow(5, b) * Math.pow(7, c)),
            (Math.pow(3, a) * Math.pow(5, b + 1) * Math.pow(7, c)), (Math.pow(3, a) * Math.pow(5, b) * Math.pow(7, c + 1)))
        beenumbers.push(bee);
    }
    return beenumbers;

}

Проблема для меня состоит в том, чтобы усовершенствовать систему, которая будет успешно проверять, какое приращение 1 в a, b или c даст следующий номер пчелы. Я использовал Math.min, чтобы получить наименьший результат с приращением a, b или c, но это все равно не работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...