inttrap(vector<int>& height){ // len * max - sum - left - right int max = 0; int sum = 0; int left = 0; for(int i = 0;i < height.size(); i++) { sum += height[i]; if (height[i] > max) { left += (height[i] - max) * i; max = height[i]; } } int right = 0; int tempmax = 0; for(int i = height.size()-1;tempmax < max; i--) { if (height[i] > tempmax) { right += (height[i] - tempmax) * (height.size()-1 - i); tempmax = height[i]; } } return height.size() * max - sum - left - right; }