Let $p$ be an odd prime number.
a) Show that $p$ divides $n2^n + 1$ for infinitely many positive integers n.
b) Find all $n$ satisfy condition above when $p = 3$
### Part (a)
1. **Choose \( n = (pk+1)(p-1) \) for every positive integer \( k \).**
   - We need to show that \( p \mid n \cdot 2^n + 1 \).

2. **Apply Fermat's Little Theorem:**
   - Fermat's Little Theorem states that for any integer \( a \) and a prime \( p \), \( a^{p-1} \equiv 1 \pmod{p} \) if \( p \nmid a \).
   - Here, \( a = 2 \) and \( p \) is an odd prime, so \( 2^{p-1} \equiv 1 \pmod{p} \).

3. **Simplify \( 2^n \) using Fermat's Little Theorem:**
   \[
   2^n = 2^{(pk+1)(p-1)} = (2^{p-1})^{pk+1} \equiv 1^{pk+1} = 1 \pmod{p}
   \]

4. **Substitute \( 2^n \) back into the expression \( n \cdot 2^n + 1 \):**
   \[
   n \cdot 2^n + 1 \equiv (pk+1)(p-1) \cdot 1 + 1 \pmod{p}
   \]

5. **Simplify the expression:**
   \[
   (pk+1)(p-1) + 1 = pk(p-1) + (p-1) + 1 = p^2k + p - pk + 1 \equiv 0 \pmod{p}
   \]
   - Since \( p \) divides \( p^2k + p - pk \), the expression simplifies to \( 0 \pmod{p} \).

6. **Conclusion:**
   - Since there are infinitely many positive integers \( k \), there are infinitely many \( n \) of the form \( (pk+1)(p-1) \) that satisfy \( p \mid n \cdot 2^n + 1 \).

### Part (b)
1. **Consider \( p = 3 \):**
   - We need to find all \( n \) such that \( 3 \mid n \cdot 2^n + 1 \).

2. **Check \( n \) modulo 6:**
   - We consider \( n = 6k + i \) for \( i = 0, 1, 2, 3, 4, 5 \).

3. **Evaluate each case:**
   - For \( n = 6k \):
     \[
     n \cdot 2^n + 1 = 6k \cdot 2^{6k} + 1 \equiv 0 \cdot 1 + 1 = 1 \pmod{3} \quad (\text{not divisible by 3})
     \]
   - For \( n = 6k + 1 \):
     \[
     n \cdot 2^n + 1 = (6k+1) \cdot 2^{6k+1} + 1 \equiv 1 \cdot 2 + 1 = 3 \equiv 0 \pmod{3} \quad (\text{divisible by 3})
     \]
   - For \( n = 6k + 2 \):
     \[
     n \cdot 2^n + 1 = (6k+2) \cdot 2^{6k+2} + 1 \equiv 2 \cdot 4 + 1 = 9 \equiv 0 \pmod{3} \quad (\text{divisible by 3})
     \]
   - For \( n = 6k + 3 \):
     \[
     n \cdot 2^n + 1 = (6k+3) \cdot 2^{6k+3} + 1 \equiv 3 \cdot 8 + 1 = 25 \equiv 1 \pmod{3} \quad (\text{not divisible by 3})
     \]
   - For \( n = 6k + 4 \):
     \[
     n \cdot 2^n + 1 = (6k+4) \cdot 2^{6k+4} + 1 \equiv 4 \cdot 16 + 1 = 65 \equiv 2 \pmod{3} \quad (\text{not divisible by 3})
     \]
   - For \( n = 6k + 5 \):
     \[
     n \cdot 2^n + 1 = (6k+5) \cdot 2^{6k+5} + 1 \equiv 5 \cdot 32 + 1 = 161 \equiv 2 \pmod{3} \quad (\text{not divisible by 3})
     \]

4. **Conclusion:**
   - The values of \( n \) that satisfy \( 3 \mid n \cdot 2^n + 1 \) are \( n = 6k + 1 \) and \( n = 6k + 2 \) for all positive integers \( k \).

The final answer is \( \boxed{ n = 6k + 1 } \) and \( n = 6k + 2 \) for all positive integers \( k \).