#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<vector>
using namespace std;
const int N=1000;
int a[N],b[N];
int main(){
int n,i,j,max=0,num;
cin>>n;
for(i=0;i<n;i++){
cin>>a[i];
b[i]=a[i];
}
sort(b,b+n);
max=b[n-1];
for(i=1;i<=max;i++){
num=0;
for(j=0;j<n;j++){
if(a[j]>=i){
num+=i;
}
if((a[j]<i||j==n-1)&&num!=0){
if(num>max){
max=num;
}
num=0;
}
}
}
cout<<max;
return 0;
}
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
const int maxn=1000;
int a[maxn];int b[maxn];
int main(){
int n;
cin>>n;
vector <int> c;
for(int i=0;i<n;i++){
cin>>a[i];
b[i]=a[i];
}
sort(b,b+n);
int MAX=b[n-1];int size=0;
for(int i=1;i<=MAX;i++){ int sum=0;
for(int j=0;j<n;j++){
if(a[j]>=i){
sum++;
}
if(((a[j]<i)||(j==n-1)) && sum!=0) //如果断了,或者是到了最后一个,则重新开始即sum=0;
{
c.push_back(sum*i);
size++;
sum=0;
}
}
}
int max_c=c[0];
for(int i=1;i<size;i++){
if(max_c<c[i])
max_c=c[i];
}
cout<<max_c;
return 0;
}