Страница: 1 [Всего задач: 4]
В массивах
a: array[0..k] of integer и
b:
array[0..l] of integer хранятся коэффициенты двух
многочленов степеней
k и
l. Поместить в массив
c: array[0..m] of integer коэффициенты их
произведения. (Числа
k,
l,
m — натуральные,
m =
k +
l; элемент массива с индексом
i
содержит коэффициент при степени
i.)
(В. Баур, Ф.Штрассен)
Дана программа вычисления значения некоторого многочлена
P(
x1,...,
xn), содержащая только команды
присваивания. Их правые части — выражения, содержащие
сложение, умножение, константы, переменные
x1,...,
xn
и ранее встречавшиеся (в левой части) переменные. Доказать,
что существует программа того же типа, вычисляющая все
n производных
P/
x1,...,
P/
xn,
причём общее число арифметических операций не более чем
в
C раз превосходит число арифметических операций
в исходной программе. Константа
C не зависит от
n.
Предложенный выше алгоритм перемножения многочленов требует
порядка
n2 действий для перемножения двух многочленов
степени
n. Придумать более эффективный (для больших
n)
алгоритм, которому достаточно порядка
nlog 4/log 3 действий.
(Для знакомых с основами анализа; сообщил
А. Г.Кушниренко) Дополнить алгоритм вычисления значения
многочлена в заданной точке по схеме Горнера вычислением
значения его производной в той же точке.
Страница: 1 [Всего задач: 4]