Leetcode Problem 50