ADD: leetcode 017, not finished