Find all polynomials $p$ such that $p(x^2)=p(x)p(x+1)$ 
Find all polynomials $p$ with complex coefficients such that
$$ p(x^2)=p(x)p(x+1).$$

The goal is to find a general formula for polynomials that satisfy the above equation.
I believe the answer is $\left(x^2-x\right)^k$ with $k\in\mathbb{N}$, but I have no idea how to get this solution.
 A: Suppose $r$ is a root of the polynomial.  Then $p(r^2) = p(r) p(r+1) = 0$ and $p((r-1)^2) = p(r-1) p(r) = 0$, so $r^2$ and $(r-1)^2$ are
roots as well.
In order to avoid generating an infinite sequence of
distinct roots, each the square of the previous one, we need $|r| = 0$ or $|r| = 1$.  Similarly we need $|r-1| = 0$ or $1$, and
$|r^2-1| = 0$ or $1$.  It's not hard to show that the only possible roots are $0$ and $1$.
EDIT: So let $p(x) = a x^m (x-1)^n$.
By considering the leading coefficient of $p(x^2) - p(x)p(x+1)$, we find that $a = 1$.  The zero of $p(x^2)$ at $0$ has order $2m$, while the zero of $p(x) p(x+1)$ there
 has order $m+n$, so $m = n$.
And finally, we find that $p(x) = x^m (x-1)^m$ does satisfy the equation.
A: Hint
If $a$ is a (real or complex) root of $p$ then $a^2$ is a root of $p$. This implies that if $p$ has a root $a$ then all numbers in the set $\{a,a^2,a^4,\ldots\}$ are roots, so $p=0$ or this set must be finite.
Complete answer:
Assume that $p$ is not constant. By Fundamental Theorem of Algebra, it has a root. Let $z$ be a complex root of $p$.
As it has been said, the set $\{z^{2^n}:n\ge 0\}$ is finite. This implies that $z$ is $0$ or a root of unity.
But we have also that
$$0=p(z-1)p(z)=p((z-1)^2)$$
so $(z-1)^2$ is a root of $p$, and then $z-1$ is also $0$ or a root of unity.
If both $z$ and $z-1$ are roots of unity we have $|z|=|z-1|=1$, that is, $z$ lies on the circles $S(0,1)$ and $S(1,1)$, so $z=e^{\pm i\pi/3}$. But then $z^2$ is a root of $p$ but it does not meet the condition $|z^2-1|=1$.
So the only possible values of $z$ are $0$ or $1$. This means that $p(x)=x^r(x-1)^s$ for some nonnegative integers $r,s$. The condition becomes
$$x^r(x-1)^s(x+1)^rx^s=x^{2r}(x^2-1)^{s}=x^{2r}(x+1)^s(x-1)^s$$
Since $\Bbb C[x]$ is an UFD, $r=s$, that is, $p(x)=(x^2-x)^r$.
You can check directly that these polynomials meet the condition, so they are all the solutions.
A: If $p(x) = 0$ then $p(x^2) = 0$. Hence if there exists a root $r$ that is not $0$ or $1$ then we get roots $\{r,r^2,r^4,\dots \}$. But this would contradict the fundamental theorem of algebra ($p$ must, of course, have finite degree). Also note as $p(0) = p(0)p(1)$, $p(0) = 0$ or $p(1) = 1$. You can show a similar claim for $x=1$. Do you think you can conclude from here?
