> 9. "Таня и Петя играют на лекции по алгебре в следующую игру. Таня выписывает многочлен произвольной степени от одной переменной с неотрицательными целыми коэффициентами, не показывая его Пете. Петя может задавать Тане вопрос о том, какое значение у многочлена при данном целом значении переменной. За какое минимальное число вопросов Петя может узнать все коэффициенты многочлена?"Ответ: 2. Достаточно
двух вопросов, вне зависимости от степени многочлена.
Решение. Пусть мы угадываем многочлен
. Зададим следующие вопросы:
Вопрос1:
.
Ответ1: какое-то натуральное число
. Обозначим
(под
обозначена целая часть
).
Вопрос2:
.
Ответ2: какое-то натуральное число
. Тогда для коэффициентов многочлена
верна следующая формула (под
обозначена дробная часть числа
):
Пример: загадано
.
Вопрос1:
Ответ1:
, отсюда
.
Вопрос2:
.
Ответ2:
Теперь находим коэффициенты исходного многочлена:
Пусть
, ищем коэффициент при
, т.е. свободный член:
Пусть
, ищем коэффициент при
, т.е. при
:
Пусть
, ищем коэффициент при
:
Пусть
, ищем коэффициент при
:
Пусть
, ищем коэффициент при
:
При
формула даст
, т.к. знаменатели слишком большие. Это означает, что более старших членов, чем
, в многочлене нет.
Для тех, кому это кажется невозможным фокусом, привожу те же расчёты на языке Maple. Попробуйте изменять многочлен и убедиться, что формула верно угадывает коэффициенты (trunc и frac в Maple означают целую и дробную часть числа соответственно).
f:=x->3*x^4+2*x^2+x+111;
n:=trunc(log[2](f(1)))+1;
f(2^n);
coef:=k->2^n*frac(f(2^n)/2^((k+1)*n))-frac(f(2^n)/2^(k*n));
coef(0);coef(1);coef(2);coef(3);coef(4);
Попробуйте-ка доказать, что это решение верное! Даже видя формулы, это не очень-то просто. Дам две подсказки:
1. Важно, что коэффициенты
— неотрицательные целые числа (а не любые действительные).
2. Сложная формула для
может быть переформулирована так:
есть число знаков в двоичной записи числа
.
(если кто-то прочитает это решение и поймёт его, или убедится в верности формулы, напишите, пожалуйста — я много думал над решением этой задачи, было бы приятно услышать, что сей текст кто-то прочитал и/или понял)
Хорошая задача, спасибо!
Сергей Маркелов