segmentation fault
#include
#include
using namespace std;
int main() {
int n;
cin>>n;
int a[n];
stacks;
int area,rem;
int max_area=0;
for(int i=0;i<n;i++){
cin>>a[i];
}
int j;
for( j=0;j<n;j++){
if(a[j]>a[s.top()] || s.empty()){
s.push(j);
}
else{
while(a[j]<a[s.top()]){
rem=s.top();
s.pop();
if(s.empty()){
area=a[rem]*j;
max_area=max(area,max_area);
}
else if(!s.empty()){
area=a[rem]*(j-rem-1);
max_area=max(area,max_area);
}
}
}
}
if(j==n){
if(!s.empty()){
rem=s.top();
s.pop();
area=a[rem]*(j-s.top()-1);
max_area=max(area,max_area);
}
else if(s.empty()){
area=a[rem]*j;
max_area=max(area,max_area);
}
}
cout<<max_area<<endl;
return 0;
}