Answers for "Trapping Rainwater Problem"

0

Trapping Rainwater Problem

class Solution {
    public int trap(int[] arr) {
        int n = arr.length;
        int water = 0;
        int leftMax = 0,rightMax = 0;
        n--;
        int i=0;
        while(i<n){
            if(arr[i]<arr[n]){
                if(arr[i]>=leftMax)
                    leftMax = arr[i];
                else
                    water += leftMax - arr[i];
                i++;
            }
            else{
                if(arr[n]>=rightMax)
                    rightMax = arr[n];
                else
                    water += rightMax - arr[n];
                n--;
            }
        }
        return water;
    }
}
Posted by: Guest on April-19-2022

Browse Popular Code Answers by Language