A problem with code reviews is that sometimes it's easier to reason about a problem as you work on it. You will likely end up with better code going through an iterative process working with your computer instead of trying to get the perfect solution the first time.
It's kind of like math. We need to expand a problem out in order to solve it, and then simplify the solution once we have it.