ctci chapter03 (not finish)