# How to rearrange CharacteristicPolynomial[ ] terms?

I have a symbolic matrix A, which I need to find the characteristic polynomial, then order the polynomial in greatest-to-least form. (Ultimately to find the matrix inversion via Cayley-Hamilton method).

Orders from least-to-greatest:

ClearAll["Global*"]

(* Input Matrix *)
A = {{a, b}, {c, d}}

cp = Collect[CharacteristicPolynomial[A, x], x]
cl = CoefficientList[cp, x]


ClearAll["Global*"]

(* Input Matrix *)
A = {{a, b}, {c, d}}

cp = Collect[CharacteristicPolynomial[A, x], x] // TraditionalForm
cl = CoefficientList[cp, x]


This method won't allow CoefficientList[ ] to function properly:

ClearAll["Global*"]

(* Input Matrix *)
A = {{a, b}, {c, d}}

cp = Collect[CharacteristicPolynomial[A, x], x] //
cl = CoefficientList[cp, x]


From another answer on polynomial rearranging, also prevent CoefficientList[] from working:

ClearAll["Global*"]

(* Input Matrix *)
A = {{a, b}, {c, d}}

c0 = Collect[CharacteristicPolynomial[A, x], x]
cx = CoefficientList[c0, x] x^Range[0, Exponent[c0, x]]
cp = Replace[Reverse@cx, List[x__] :> HoldForm[Plus[x]]]
cl = CoefficientList[cp, x]


I've tried other method outlined in past answers, but none seem to work with CoefficientList[ ] ? What gives?

Need to use ParameterVariables
ClearAll["Global*"]
` 