Find all polynomials f that satisfy the following property 
Let $n \geq 2$ a positive integer. Find the polynomials $f$ with complex coefficients that satisfy the following property:
  $$f(z^n)=f^n(z)$$ for all complex numbers z.

My trial was to denote $ f(z)=z^x g(z)+f(0)$ and substitute. But it seems useless and I have no other ideas.
 A: Note that I interpret $f^n(z)$ as $\big(f(z)\big)^n$.  However, I can show why this problem is not using $f^n$ to mean $f\circ f\circ \ldots \circ f=f^{[n]}$ (with $n$ occurrences of $f$).  I will now find all polynomials $f$ such that
$$f(z^n)=f^{[n]}(z).$$Note that constant polynomials always work.  
We now ignore constant $f$.  If $d>0$ is the degree of $f$, then $f^{[n]}(z)$ has degree $d^n$ while $f(z^n)$ has degree $dn$.  Therefore,
$$d^n=dn.$$
That is, $d^{n-1}=n$.  For $n>2$, this is impossible.  If $n=2$ and $d=2$, then we are to solve for $f$ such that $$f(z^2)=f\big(f(z)\big).$$  If $a$ is the leading coefficient of $f(z)$, then $a=a^2$ and so $a=1$.  That is $f(z)=z^2+bz+c$.  Hence,
$$0=f\big(f(z)\big)-f(z^2)=2bz^3+(b^2+2c)z^2+b(b+2c)z+c(b+c).$$
Therefore, $b=c=0$.  Thus $f(z)=z^2$ is the only non-constant answer (which may make the problem a bit uninteresting).
For the remaining part, $f^n(z)$ is $\big(f(z)\big)^n$.  If $f$ is constant, then show that $f(z)=0$ or $f(z)=\gamma$ where $\gamma$ satisfies $\gamma^{n-1}=1$.  Suppose now that $f$ has degree $d\geq 1$.  
Let $r$ be an arbitrary root of $f$.  Then, for any $n$th root $r_1$ of $r$,
$$0=f(r)=f(r_1^n)=f^n(r_1).$$
So $f(r_1)=0$, or $r_1$ is a root of $f$.  By induction, if $r_k$ is an $n^k$th root of $r$, then $r_k$ is also a root of $f$.  But if $r\neq 0$, there are $n^k$ distinct choices of $r_k$.  Thus, the degree of $f$ is at least $n^k$ for every positive integer $k$.  This is absurd.  Therefore, the only root of $f$ is $0$.  You can finish the rest, and you will find out that
$$f(z)=\gamma z^d$$
where $\gamma^{n-1}=1$.  (Since the problem offers richer solutions with the interpretation $f^n(z)=\big(f(z)\big)^n$, I think this is what it is supposed to mean.)
