Quale dei due? Che cosa hai inserito in input? Ricordati sempre che non è mai sufficiente dire che qualcosa non funziona. Nelle poche prove che ho fatto il codice aveva restituito il risultato corretto.
Il motivo per cui avevo scritto $p_i$ e non $p_{i-1}$ è che ho interpretato $p_i$ come l'$i$-simo elemento dell'array. Per cui se il tuo array è p = [2 3 4] allora il tuo polinomio è $p(1) + p(2)*x + p(3)*x^2 = 2 + 3x + 4x^2$. Come vedi l'indice dell'array è maggiore di quello dell'esponente in questo caso.

