Задачи
Find the Outlier
Find the Outlier
Professor Abacus has just built a new computing engine for making numerical tables. It was designed to calculate the values of a polynomial function in one variable at several points at a time. With the polynomial function \textbf{f(x)=x^2+2x+1}, for instance, a possible expected calculation result is \textbf{1 (= f(0))}, \textbf{4 (= f(1))}, \textbf{9 (= f(2))}, \textbf{16 (= f(3))}, and \textbf{25 (= f(4))}.
It is a pity, however, the engine seemingly has faulty components and exactly one value among those calculated simultaneously is always wrong. With the same polynomial function as above, it can, for instance, output \textbf{1}, \textbf{4}, \textbf{12}, \textbf{16}, and \textbf{25} instead of \textbf{1}, \textbf{4}, \textbf{9}, \textbf{16}, and \textbf{25}.
You are requested to help the professor identify the faulty components. As the rst step, you should write a program that scans calculation results of the engine and nds the wrong values.
\InputFile
The input is a sequence of datasets, each representing a calculation result in the following format.
\textbf{d}
\textbf{v_0}
\textbf{v_1}
\textbf{...}
\textbf{v_\{d+2\}}
Here, \textbf{d} in the rst line is a positive integer that represents the degree of the polynomial, namely, the highest exponent of the variable. For instance, the degree of \textbf{4x^5+3x+0.5} is ve and that of \textbf{2.4x+3.8} is one. \textbf{d} is at most five.
The following \textbf{d+3} lines contain the calculation result of \textbf{f(0)}, \textbf{f(1)}, ..., and \textbf{f(d+2)} in this order, where \textbf{f} is the polynomial function. Each of the lines contains a decimal fraction between \textbf{-100.0} and \textbf{100.0}, exclusive.
You can assume that the wrong value, which is exactly one of \textbf{f(0)}, \textbf{f(1)}, ..., and \textbf{f(d+2)}, has an error greater than \textbf{1.0}. Since rounding errors are inevitable, the other values may also have errors but they are small and never exceed \textbf{10^\{-6\}}.
The end of the input is indicated by a line containing a zero.
\OutputFile
For each dataset, output \textbf{i} in a line when \textbf{v_i} is wrong.
Входные данные #1
2 1.0 4.0 12.0 16.0 25.0 1 -30.5893962764 5.76397083962 39.3853798058 74.3727663177 4 42.4715310246 79.5420238202 28.0282396675 -30.3627807522 -49.8363481393 -25.5101480106 7.58575761381 5 -21.9161699038 -48.469304271 -24.3188578417 -2.35085940324 -9.70239202086 -47.2709510623 -93.5066246072 -82.5073836498 0
Выходные данные #1
2 1 1 6