https://files.cnblogs.com/case_interview/ace_your_case_ii-15%20more%20cases.pdf