Ancora archeologia

Olimpiadi di Matematica – Fase nazionale a squadre

Grazie anche al vostro aiuto il sistema di numerazione della civiltà Qwghlm è stato finalmente decifrato.
Ora potete apprezzare un altro problema trovato da alcuni valenti archeologi e tradotto nel nostro sistema decimale.

“Quali sono le ultime quattro cifre del coefficiente più grande in valore assoluto del polinomio

(x-1)(x-2)(x-4)(x-8)(x-16)(x-32)(x-64)?”

Vedi la discussione

Soluzione senza moduli aggiuntivi?

SymPy

import sympy as sp

x = sp.symbols('x')
p = (x-1)*(x-2)*(x-4)*(x-8)*(x-16)*(x-32)*(x-64) # (x - 64)*(x - 32)*(x - 16)*(x - 8)*(x - 4)*(x - 2)*(x - 1) 
p = sp.expand(p)                                 # x**7 - 127*x**6 + 5334*x**5 - 94488*x**4 + 755904*x**3 - 2731008*x**2 + 4161536*x - 2097152
n = sp.degree(p)                                 # 7

cmax=max((abs(p.coeff(x, g)) for g in range(n)))
print(cmax)                                      # 4161536
print(cmax % 10000)                              # 1536     (le ultime quattro cifre)