https://www.luogu.com.cn/record/97307784
#include<bits/stdc++.h>
using namespace std;
int n;
int a[2000005];
int f[2000005],l=1,r=0;
long long ans;
int main(){
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
while(l<=r&&a[f[r]]>a[i]){
ans=max(ans,1ll*(i-f[r-1]-1)*a[f[r]]);
r--;
}
f[++r]=i;
}
for(int i=l;i<=r;i++){
ans=max(ans,1ll*(n-f[i]+1)*a[f[i]]);
}
printf("%lld",ans);
return 0;
}
谢谢qwq