Задать вопрос
@emtyxd

Найти наибольшее количество слагаемых из переменных двух массивов?

Существует 2 массива n, m
Переменная предела суммы s
Необходимо найти максимальное количество слагаемых из 2 массивов (n[0] + m[0]), брать числа можно только по порядку.
После нахождения суммы, которая равна или меньше переменной s, числа из массивов удаляются.
Например:
n = [5, 1, 1, 1, 1]
m = [1, 3, 3, 3, 3]
s = 10
Предполагаемый результат 6 ( n[0] + n[1-4] + m[1] / (5 + 1 + 1 + 1 + 1 +1) )
  • Вопрос задан
  • 137 просмотров
Подписаться 1 Простой 3 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Python-разработчик + ИИ
    8 месяцев
    Далее
Решения вопроса 1
Alexandroppolus
@Alexandroppolus
кодир
function maxCount(s, a1, a2, i1 = 0, i2 = 0) {
    const c1 = i1 < a1.length && a1[i1] <= s ? 1 + maxCount(s - a1[i1], a1, a2, i1 + 1, i2) : 0;
    const c2 = i2 < a2.length && a2[i2] <= s ? 1 + maxCount(s - a2[i2], a1, a2, i1, i2 + 1) : 0;

    return Math.max(c1, c2);
}

console.log(maxCount(10, [5, 1, 1, 1, 1], [1, 3, 3, 3, 3]));


на каждом шаге выбираем максимум из с1 (случай, когда можно взять очередной элемент из массива a1) и с2 (из массива а2)

можно добавить мемоизацию для ускорения (мемоизовать по паре i1, i2)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
Найти наибольшее количество слагаемых из переменных двух массивов?

Не найти.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽