While the method above is indeed valid, one could also solve the problem using calculus:
Let P(x)=x3+3ax2+3bx+c.
Then P'(x)=3x2+6ax+3b.
For there to be a double root, there must exist some x such that P(x)=0 and P'(x)=0.
P'(x)=0 iff 3x2+6ax+3b=0, i.e. x2+2ax+b=0.
Now, P(x)=0 for the same...