效率很低 但是过了。。。
/**
* @param {number[]} heights
* @return {number}
*/
var largestRectangleArea = function(heights) {
function getAreaAccordingMin(index){
let val = heights[index];
let start = index;
while(start >= 0 && heights[start] >= val){
start --;
}
start ++;
let end = index;
while(end < heights.length && heights[end] >= val){
end ++;
}
end --;
return val * (end - start + 1);
}
let max = 0;
for(let i = 0; i < heights.length; ++i){
let res = getAreaAccordingMin(i);
if(res > max){
max = res;
}
}
return max;
};