Создайте массив размера N с суммой, кратной K, и максимум массива сведен к минимуму

Опубликовано: 20 Сентября, 2022

Даны целые числа N и K . Задача состоит в том, чтобы построить массив размера N так, чтобы сумма всех элементов делилась на K, а максимальный элемент был как можно меньше.

Примечание. Возможных массивов может быть много. Печать любого из них допустима

Примеры:

Input: N = 1, K = 5
Output: 5
Explanation: Sum of all elements = 5 and  5 is divisible by 5.

Input: N = 4, K = 3
Output: 2 1 1 2
Explanation: Sum of all elements = 6 and  6 is divisible by 3.

Input: N = 7, K = 6
Output: 2 2 2 2 1 1 2

Подход: Решение основано на идее, что чем меньше сумма массива, тем меньше максимальный элемент. Следуйте шагам:

  • Вычислите требуемую сумму результирующего массива, используя сумму, равную коэффициенту, умноженному на K.
  • Коэффициент равен делению этажа (N/K).
  • Наконец, вычислите максимальный элемент массива, который является ceil делением (сумма/N).

Ниже приведена реализация описанного выше подхода.


Временная сложность: O(N)
Вспомогательное пространство: O(N)

РЕКОМЕНДУЕМЫЕ СТАТЬИ