I think it can be solved in this way:
We have the condition $n^n<10^G$
Since we are talking about a large number, it is safe to do:
$\log_{10}(n^n) < \log_{10} (10^G)$
Simplifying a little gives us $n\log_{10}(n) < 10^{100}$ since $G = 10^{100}$
Taking log again on both sides will give us: $\log_{10}(n\log_{10}(n)) < 100$ which can be written as $\log(n) + \log(\log(n)) < 100\ \ ...(1)$
Now let $x$ be the number of digits in the number $n$, then $x \approx \log_{10}(n)$
We can rewrite equation 1 above as $x + \log(x) < 100$ for which the largest value of x that satisfies the equation is 98.
Edit: (correction as suggested by Arthur)
The number then would be $n \approx 1.02 \times 10^{98}$ which will then have 99 digits. So the answer would be 99