Given that, a function $f(n)$, defined on the natural numbers, satisfies the following conditions: (i)$f(n)=n-12$ if $n>2000$; (ii)$f(n)=f(f(n+16))$ if $n \leq 2000$.
(a) Find $f(n)$.
(b) Find all solutions to $f(n)=n$.
Given the function \( f(n) \) defined on the natural numbers with the conditions:
1. \( f(n) = n - 12 \) if \( n > 2000 \)
2. \( f(n) = f(f(n + 16)) \) if \( n \leq 2000 \)

We need to find:
(a) The explicit form of \( f(n) \)
(b) All solutions to \( f(n) = n \)

### Part (a): Finding \( f(n) \)

1. **Case 1: \( n > 2000 \)**
   \[
   f(n) = n - 12
   \]

2. **Case 2: \( n \leq 2000 \)**
   We need to analyze the recursive condition \( f(n) = f(f(n + 16)) \).

   - **Subcase: \( 1984 < n \leq 2000 \)**
     For \( n \) in this range, \( n + 16 > 2000 \), so:
     \[
     f(n + 16) = (n + 16) - 12 = n + 4
     \]
     Therefore:
     \[
     f(n) = f(f(n + 16)) = f(n + 4)
     \]
     This implies that \( f(n) \) depends on \( n \mod 4 \).

     Let's determine \( f(n) \) for \( n \mod 4 \):
     - If \( n \equiv 0 \pmod{4} \), then \( n = 4k \):
       \[
       f(n) = f(2000) = 1988
       \]
     - If \( n \equiv 1 \pmod{4} \), then \( n = 4k + 1 \):
       \[
       f(n) = f(2001) = 1989
       \]
     - If \( n \equiv 2 \pmod{4} \), then \( n = 4k + 2 \):
       \[
       f(n) = f(2002) = 1990
       \]
     - If \( n \equiv 3 \pmod{4} \), then \( n = 4k + 3 \):
       \[
       f(n) = f(2003) = 1991
       \]

   - **Subcase: \( n \leq 1984 \)**
     For \( n \) in this range, we use the recursive property:
     \[
     f(n) = f(f(n + 16))
     \]
     Since \( n + 16 \leq 2000 \), we can apply the same logic recursively until \( n + 16k > 2000 \).

     By induction, we find that \( f(n) \) for \( n \leq 2000 \) also depends on \( n \mod 4 \):
     - If \( n \equiv 0 \pmod{4} \), then \( f(n) = 1988 \)
     - If \( n \equiv 1 \pmod{4} \), then \( f(n) = 1989 \)
     - If \( n \equiv 2 \pmod{4} \), then \( f(n) = 1990 \)
     - If \( n \equiv 3 \pmod{4} \), then \( f(n) = 1991 \)

Thus, we have:
\[
f(n) = 
\begin{cases} 
n - 12 & \text{if } n > 2000 \\
1988 + (n \mod 4) & \text{if } n \leq 2000 
\end{cases}
\]

### Part (b): Finding all solutions to \( f(n) = n \)

We need to solve \( f(n) = n \).

1. **For \( n > 2000 \):**
   \[
   f(n) = n - 12 \implies n - 12 = n \implies \text{No solutions}
   \]

2. **For \( n \leq 2000 \):**
   \[
   f(n) = 1988 + (n \mod 4) = n
   \]
   This implies:
   \[
   n = 1988 + (n \mod 4)
   \]
   Let \( n \mod 4 = k \), where \( k \in \{0, 1, 2, 3\} \):
   \[
   n = 1988 + k
   \]
   Therefore, the solutions are:
   \[
   n = 1988, 1989, 1990, 1991
   \]

The final answer is \( \boxed{ \{1988, 1989, 1990, 1991\} } \)