Let $P(x)$ be a polynomial with integer coefficients. Suppose that $P(n)$ is a $k$'th power for every integer $n$. Prove that $P(x)=(Q(x))^k$, with $Q(x)$ being a polynomial with integer coefficients.
I know that this is well-known, and there are plenty of solutions on the internet. But I am looking for a solution using limits, and I don't know how. How can I solve this problem without using residues or Hilbert's irreducibility theorem ?