leetcode 329,977