popovArtem1156465156
12.01.2020 17:16

Составить программу нахождения среднего арифметического нечетных чисел на заданном промежутке ​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Vandannc
10.01.2020 19:04
Вот: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 const   n=5; var   a: array[1..n,1..n] of integer;   i,j,s: integer; begin   s: =0;   randomize;   for i: =1 to n do     begin       for j: =1 to n do         begin           a[i,j]: =random(10);           write(a[i,j]: 4);           if (i+j) mod 3=0 then             s: =s+a[i,j];         end;       writeln;     end;   writeln('s=',s); end.
0,0(0 оценок)
Ответ:
RegexArtSek
18.10.2022 04:21

Так как речь идет о таблице, то лучше перебрать рекурсивно. Логично , что количество путей для клетки (i,j) - это количество путей для правой соседней клетки + количество путей для нижней соседней клетки.

При таком условии мы будем посещать те же клетки слишком часто, однако значение для них меняться не будет. Имеет смысл вычислить их единожды и запомнить для последующих использований. (На самом деле, достаточно иметь буфер вместимостью всего в 6 элементов, но мы сделаем полное запоминание).

(Иллюстрация 3 - таблица кэша)

Иллюстрации кода и возможного вывода прикреплены в дополнительных материалах.

========================

Ваши оценки и отзывы позволяют лучше оценить качество ответа.

Если ответ удовлетворил, не забудь отметить его как "Лучший".

Успехов в учёбе!

========================

Код:

cache = {}

def calculate_max_way_price(x: int, y: int, m:int, n:int):

   if (x, y) in cache:

       return cache[(x, y)]

   x_way, y_way = 0, 0

   if x < m - 1:

       x_way = calculate_max_way_price(x + 1, y, m, n)

   if y < n - 1:

       y_way = calculate_max_way_price(x, y + 1, m, n)

   if x == m - 1 and y == n - 1:

       cache[(x, y)] = 1

       return 1

   cache[(x, y)] = x_way + y_way

   return x_way + y_way

N = int(input("Enter N value: "))

M = int(input("Enter M value: "))

print(calculate_max_way_price(0, 0, N, M))


Количество маршрутов в прямоугольной таблице В прямоугольной таблице N×M вначале игрок находится в л
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота