У меня проблемы с написанием этого алгоритма, но я думаю, что у меня есть хороший gr asp, но продолжаю терпеть неудачу. Предполагается, что алгоритм возвращает наименее непрерывную сумму массива с заданным диапазоном. Например, предположим, что массив таков: [1, 3, 4, 2, -1, 5, -1, 1]. Функция получает диапазон. Для этого примера допустим, что диапазон равен 3. Цель состоит в том, чтобы найти 3 последовательных элемента с наименьшей суммой. В приведенном выше примере это будет 3. Поскольку -1 + 5 + -1 - это 3 последовательных элемента, которые дают наименьшую сумму.
Псевдокод алгоритма:
def least_sum_search(length,dictionary):
least_sum = 0
max_range = 283
for i in dictionary:
sum = 0
look_ahead = length
index = i
if i + length > max_range:
break
while(look_ahead > 0):
sum += dictionary[index]['price']
index += 1
look_ahead -= 1
if(least_sum > sum):
least_sum = sum
return least_sum
Как бы вы написали этот алгоритм? Я лично думаю, что я переосмысливаю это. Спасибо за чтение!