leetcode soucecode part 1