#include<iostream>
using namespace std;
const int N = 1e5+10;
int a[N];
//给定 n 个非负整数 a1,a2,…,an,表示平面上有 n
//条竖线,第 i 条竖线的两个端点是 (i,ai) 和 (i,0)
int main()
{
//优化纯暴力解法,双指针法
int n;
cin >> n;
for(int i=1; i<=n; i++)
cin >> a[i];
int ans = -1, i = 1, j = n;
while(i<j)
{
ans = max(ans, min(a[i], a[j]) * (j-i));
if(a[i] <= a[j])
i++;
else
j--;
}
cout << ans << endl;
return 0;
}