leetcode trappingrainwater