#include <iostream>
using namespace std;
const int N = 2e5+10;
int h[N];
int mif[N],maf[N];
int main() {
int n;cin>>n;
for(int i=0;i<n;i++) cin>>h[i];
mif[0]=h[0],maf[0]=h[0];
for(int i=1;i<n;i++)
{
maf[i]=max(maf[i-1]*h[i],max(h[i],mif[i-1]*h[i]));
mif[i]=min(mif[i-1]*h[i],min(h[i],maf[i-1]*h[i]));
}
int k = 0;
if(n==1) cout<<h[0];
else
{
for(int i=0;i<n;i++)
k = max(k,maf[i]);
cout<<k;
}
}
// 64 位输出请用 printf("%lld")



京公网安备 11010502036488号