#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
const int maxn=200000+10;
long long a[maxn],n;
long long Min;
long long ans;
long long b[maxn];
int main()
{
while(~scanf("%lld",&n)){
Min=99999999999;
for(long long i=1;i<=n;i++) scanf("%lld",&a[i]);
for(long long i=1;i<=n;i++) if(a[i]<Min) Min=a[i];
int tot=0;
for(long long i=1;i<=n;i++) if(a[i]==Min) b[tot++]=i;
ans=-99999999999;
for(int i=0;i<tot;i++)
{
if(i<tot-1)
{
long long ans2=(Min)*(n-b[i+1]+1+b[i])+(Min+1)*(b[i+1]-b[i]-1);
ans=max(ans,ans2);
}
else if(i==tot-1)
{
long long ans2=(Min+1)*(n-b[i]+b[0]-1)+Min*(b[i]-b[0]+1);
ans=max(ans,ans2);
}
}
printf("%lld
",ans);
}
return 0;
}