leetcoding 116