catalog
Base
从A[i]元素: 往左走,找“第一个” < A[i]的位置 截止,记作为Lef
往右走,找“第一个” > A[i]的位置 截止,记作为Rig
FOR(i, 0, n-1, 1){
while( (!stk.empty()) && (A[ stk.top() ] >= A[i]) ){
stk.pop();
}
if(stk.empty()) lef[i] = 0;
else lef[i] = stk.top() + 1;
stk.push(i);
} // top是 最大的!!!
FORR(i, n-1, 0, 1){
while( (!stk.empty()) && (A[ stk.top() ] <= A[i]) ){
stk.pop();
}
if(stk.empty()) rig[i] = n-1;
else rig[i] = stk.top() - 1;
stk.push(i);
} // top是 最小的!!!