Показать сообщение отдельно
  #1 (permalink)  
Старый 15.06.2022, 19:48
Аспирант
Отправить личное сообщение для Volonter Посмотреть профиль Найти все сообщения от Volonter
 
Регистрация: 18.01.2011
Сообщений: 93

Математическая задачка на JS (часть кода внутри)
Привет всем, есть простая математическая задачка, пытаюсь ее написать на javascript. Суть задачи - получить 10-значное число, в котором
первая цифра соответствует количеству единиц в числе;
вторая цифра - количеству двоек;
третья цифра - количеству троек;
...
десятая цифра - количеству нулей.
получается вот такое число 2 1 0 0 0 1 0 0 0 6
как кодом его его получить?
Кроме как написать каркас с рекурсией дальше у меня не идет, нужна помощь гуру))
let a = [];
let b = [];


function number(left, pos) {
    if (pos == 10) {
        if (left == 0) {
            b.splice(0, a.length)
            for (i = 0; i < 10; i++) {
                ++b[a[i]];
            }
            // наверное дальше надо как то сравнить оба массива??
        }
    } else {
        for (i = 0; i <= left; i++) {
            a[pos] = i;
            number(left - i, pos + 1);
        }
    }
}

number(10, 0);

Заранее спасибо!
Ответить с цитированием