P(n+1) is (n^3 + 3n^2 + 3n + 1)%6 = (n+1)%6
and assume we start with n^3%6 = n%6, where % means mod (like in C language).
(n^3 + 3n^2 + 2n)%6 + (n+1)%6 = (n+1)%6
(n^3 + 3n^2 + 2n)%6 = 0
Substitute n%6 in place of n^3%6 and get:
(3n(n+1))%6=0
For even numbers, 3n is a multiple of 6, so that works.
For odd numbers, the (n+1) part is even, so that works.