Problem 23 solution added. ~5.4 seconds running time.