II. (40 points) Given that $p$ is a prime number, and $m, n$ are natural numbers. Find all tuples $(p, m, n)$ such that $p^{m}+p^{n}$ is a perfect square.
(1) When $m=n$, $p^{m}+p^{n}=2 p^{m}=t^{2}$, then $p=t=2$, and $m=2 k+1(k \in \mathbf{N})$.
Thus, the array
$$
(p, m, n)=(2,2 k+1,2 k+1)(k \in \mathbf{N}) \text {. }
$$
(2) When $m \neq n$, assume without loss of generality that $m>n$. Then
$$
p^{m}+p^{n}=p^{n}\left(p^{d}+1\right) \text {, }
$$

where $d=m-n>0(d \in \mathbf{N})$.
Since $p$ is a prime, and $\left(p^{n}, p^{d}+1\right)=1$, it follows that $p^{n}$ and $p^{d}+1$ are both perfect squares.

Let $p^{d}+1=t^{2}\left(t \in \mathbf{N}_{+}\right)$. Then $p^{d}=(t+1)(t-1)$.
Thus, $t+1=p^{u}, t-1=p^{v}(u>v \geqslant 0, d=u+v)$.
Therefore, $p^{u}=p^{v}+2$.
If $v>0$, then
$$
\begin{array}{l}
p \mid 2 \Rightarrow p=2, u=2, v=1 \\
\Rightarrow(p, m, n)=(2,2 k+3,2 k)(k \in \mathbf{N}) ;
\end{array}
$$

If $v=0$, then
$$
\begin{array}{l}
p=3, u=1 \\
\Rightarrow(p, m, n)=(3,2 k+1,2 k)(k \in \mathbf{N}) .
\end{array}
$$

In summary,
$$
\begin{array}{l}
(p, m, n) \\
=(2,2 k+1,2 k+1),(2,2 k+3,2 k), \\
(2,2 k, 2 k+3),(3,2 k+1,2 k), \\
(3,2 k, 2 k+1)(k \in \mathbf{N}) .
\end{array}
$$