Знайдіть Відхилення#5415

Знайдіть Відхилення

30 секунд
128 мегабайтів
Складна

Професор Абакус нещодавно розробив новий обчислювальний двигун для створення числових таблиць. Цей двигун призначений для обчислення значень поліноміальної функції однієї змінної в кількох точках одночасно. Наприклад, для поліноміальної функції f(x)=x^2+2x+1 очікуваний результат обчислень може бути: 1 (= f(0)), 4 (= f(1)), 9 (= f(2)), 16 (= f(3)), і 25 (= f(4)).

На жаль, двигун має несправність, через яку одне з обчислених значень завжди є неправильним. Наприклад, для тієї ж поліноміальної функції він може видати , , , , і замість , , , , і .

Вам доручено допомогти професору виявити несправні компоненти. Як перший крок, ви повинні написати програму, яка аналізує результати обчислень двигуна і знаходить неправильне значення.

Вхідні дані

Вхідні дані складаються з кількох наборів, кожен з яких представляє результат обчислення у наступному форматі.

v_0

v_1

v_{d+2}

Тут у першому рядку - це додатне ціле число, яке вказує на степінь полінома, тобто найвищий показник змінної. Наприклад, степінь 4x^5+3x+0.5 дорівнює п'яти, а 2.4x+3.8 дорівнює одиниці. не перевищує п'яти.

Наступні d+3 рядки містять результати обчислень , , ..., і f(d+2) у цьому порядку, де - це поліноміальна функція. Кожен з рядків містить десятковий дріб у межах від до , виключно.

Ви можете припустити, що неправильне значення, яке є рівно одним з , , ..., і f(d+2), має помилку, що перевищує . Оскільки округлювальні помилки неминучі, інші значення також можуть мати помилки, але вони невеликі і ніколи не перевищують 10^{-6}.

Кінець введення позначається рядком, що містить нуль.

Вихідні дані

Для кожного набору даних виведіть в рядку, коли v_i є неправильним.

Приклади

Приклад 1

Loading
Loading