Last 3 digits of $3^{999}$
Using Carmichael function will be beneficial here as $\displaystyle\lambda(1000)=100$
$$\implies 3^{100n}\equiv1^n\pmod{1000}\equiv1$$ for any integer $n$
As $(3,1000)=1,$ this implies $$3^{100n-1}\equiv3^{-1}$$
As $\displaystyle 999\equiv-1\pmod{1000}\implies3^{-1}\equiv-333\equiv1000-333$
To know $3^n\bmod 1000$ it is enough to know $3^n\bmod 8$ and $3^n\bmod 125$. From $3^2\equiv 1\pmod 8$ we conclude $3^{1000}\equiv 1\pmod 8$. From $\phi(125)=100$, we conclude $3^{1000}=(3^{100})^{10}\equiv 1\pmod{125}$. Therefore $3^{1000}\equiv 1\pmod {1000}$. This implies $3^{999}\equiv 667\pmod{1000}$
$$3^{999}=3(10-1)^{499}$$
Now, $$(10-1)^{499}\equiv-1+\binom{499}110^1-\binom{499}210^2\pmod{1000}$$
Again, $\displaystyle\binom{499}1=499\equiv-1\pmod{100}\implies\binom{499}110^1\equiv-10\pmod{100\cdot10}$
and $\displaystyle\binom{499}2=\frac{499\cdot498}2\equiv\frac{(-1)(2)}2\pmod{10}\equiv1\implies\binom{499}210^2\equiv100\pmod{10\cdot100}$
$\displaystyle\implies(10-1)^{499}\equiv-1-10-100\pmod{1000}\equiv-111$
The rest should be easy to deal with