Here is an elementary answer to the question.
Let $\alpha \in \Bbb C$ be an $n$-th root of $k$. It is clear that the polynomial $x^n - k$ factors over $\Bbb C$ as: $x^n - k = \prod_{\zeta\in \mu_n} (x - \zeta\alpha)$, where $\mu_n$ denotes the set of all $n$-th root of unity.
Suppose that there exists a prime number $q$ such that $a = v_q(k)$ is prime to $n$.
We write $f(x) = g(x)h(x)$ with monic polynomials $g, h \in \Bbb Z[x]$.
From the factorization of $f$ over $\Bbb C$, we can write $\mu_n$ as a disjoint union $\mu_n = I \sqcup J$, such that $g(x) = \prod_{\zeta \in I}(x - \zeta\alpha)$ and $h(x) = \prod_{\zeta\in J}(x - \zeta\alpha)$.
Let $i$ and $j$ be the cardinalities of $I$ and $J$, respectively, so that $i + j = n$.
The constant term of $g$ is equal to $\zeta \alpha^i$ for some root of unity $\zeta$.
Since it is an integer, taking absolute value gives us $|\alpha|^i \in \Bbb Z$.
Similarly, we have $|\alpha|^j \in \Bbb Z$.
Write $u = v_q(|\alpha|^i)$ and $v = v_q(|\alpha|^j)$, which are integers. It follows that
- $uj = v_q(|\alpha|^{ij}) = vi$;
- $u + v = v_q(|\alpha|^n) = v_q(|k|) = a$.
Thus we have $un = u(i + j) = ui + vi = ai$.
But $a$ is prime to $n$, hence we have $n \mid i$ which implies $i = 0$ or $i = n$.
That is, either $g = 1$ or $g = f$.