Newtonova metoda


Submit solution

Points: 100 (partial)
Time limit: 1.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
C++, Haskell, OCaml, PyPy, Python

Ivica je nedavno naučio Newtonovu metodu za pronalazak nultočke pa ju je htio isprobati. Smislio je polinom stupnja \(n\) u faktoriziranom obliku \[ P(x)=(x-r_1)(x-r_2)(x-r_3)...(x-r_n), \] gdje \(r_i\) predstavlja nultočku, odnosno \(P(r_i) = 0\). Dok Ivice nije bilo, Marica je vidjela taj polinom i nije joj se svidio, te ga je zato izmnožila u standardni oblik i dobila \[ P(x)=c_nx^n+c_{n-1}x^{n-1}+\dots+c_1x+c_0, \] pri čemu su \(c_j\) koeficijenti uz potencije \(x^j\). Ivici je žao i želi svoj polinom nazad, no njega ne zanima cijeli polinom nego dovoljno mu je samo jedna nultočka \(r_i\) koja je najbliža nuli, odnosno nultočka koja ima najmanju apsolutnu vrijednost. Ako su nultočke \(+a\) i \(-a\) obje imaju najmanju apsolutnu vrijednost, onda vratite \(+a\), tj. vratite pozitvinu.

Dodatno kao pomoć, Ivica se sjetio da su sve nultočke \(r_i\) zapravo cijeli brojevi.

Ulazni podaci

U prvome retku nalazi se broj \(n\) (\(1 \leq n \leq 2\cdot 10^5\)).

Zatim u sljedećem retku se nalazi \(n+1\) cijeli broj \(c_i\) \((-10^{18} \leq c_i \leq 10^{18})\), koeficijenti koje je Marica dobila i to redom \(c_n\) \(c_{n-1}\) \(c_{n-2}\) \(\dots\) \(c_1\) \(c_0\).

Izlazni podaci

U prvi redak ispišite jedan broj, nultočku \(r_i\) sa najmanjom apsolutnom vrijednosti. Ako imamo dvije najmanje nultočke sa različitim predznakom ispišite onu pozitivnu.

Podzadatci

Podzadatak Broj bodova Ograničenja
1 80 \(1 \leq n \leq 3\)
2 20 Nema dodatnih ograničenja.

Ulaz primjera 1

2
1 0 -9

Izlaz primjera 1

3

Pojašnjenje primjera 1

Polinom koji je Ivica zamislio glasi \((x-3)(x+3)\), koji kad ga Marica izmnoži glasi \(x^2 - 9\). Nultočke sa najmanjom apsolutnom vrijednošču su obje \(r_1 = 3\) i \(r_2 = -3\). Rješenje je \(3\) jer se u zadatku traži pozitivan ako dvije različite nultočke imaju istu apsolutnu vrijednost.

Ulaz primjera 2

3
1 -15 75 -125

Izlaz primjera 2

5

Pojašnjenje primjera 2

Polinom koji je Ivica zamislio je \((x-5)(x-5)(x-5)\).

Ulaz primjera 3

4
1 -14 28 120 0

Izlaz primjera 3

0

Pojašnjenje primjera 3

Polinom koji je Ivica zamislio je \((x-0)(x-6)(x-10)(x+2)\).


Comments

There are no comments at the moment.