Let $A$ be a $n \times n$ matrix with polynomial characteristic

$$f = (x-c_{1})^{d_{1}}...(x-c_{k})^{d_{k}}.$$

prove that

$c_{1}d_{1} + ...+c_{k}d_{k} = trace(A).$

i try this: $A$ defines e linear operator $T: V \rightarrow V$ so by C.H. Theorem $f(T) = 0$ for all $v \in V$ then exists a basis of $V$ of eigenvalues of $c_{i}$ and that show $A$ is diagonalizable, but i notice that its wrong because if this was true then all linear operator are diagonalizable. Any sugestion for the solution in the same line of idea?