For each positive integer $n$, let $f(n) = \sum_{k = 1}^{100} \lfloor \log_{10} (kn) \rfloor$. Find the largest value of $n$ for which $f(n) \le 300$.
Note: $\lfloor x \rfloor$ is the greatest integer less than or equal to $x$.
Observe that $f$ is strictly increasing in $n$. We realize that we need $100$ terms to add up to around $300$, so we need some sequence of $2$s, $3$s, and then $4$s.
It follows that $n \approx 100$ (alternatively, use binary search to get to this, with $n\le 1000$). Manually checking shows that $f(109) = 300$ and $f(110) > 300$. Thus, our answer is $\boxed{109}$.