Условие
Дана квадратная таблица
a[1..n][1..n] и число
m≤n. Для каждого квадрата
m×
m
в этой таблице вычислить сумму стоящих в нём чисел. Общее
число действий порядка
n2.
Решение
Сначала для каждого горизонтального
прямоугольника размером
m×
1 вычисляем сумму
стоящих в нём чисел. (При сдвиге такого прямоугольника по
горизонтали на
1 нужно добавить одно число и одно
вычесть.) Затем, используя эти суммы, вычисляем суммы
в квадратах. (При сдвиге квадрата по вертикали добавляется
полоска, а другая полоска убавляется.)
Источники и прецеденты использования
|
|
|
книга |
|
Автор |
А.Шень |
|
Название |
Программирование: теоремы и задачи |
|
Издательство |
МЦНМО |
|
Издание |
второе |
|
Год издания |
2004 |
|
глава |
|
Номер |
1 |
|
Название |
Переменные, выражения, присваивания |
|
параграф |
|
Номер |
2 |
|
Название |
Массивы |
|
задача |
|
Номер |
1.2.35 |