#include #define REP(i,n,N) for(int i=n;i>n; ll dp[20][2]; REP(i,1,20) { dp[i][0]=-inf; dp[i][1]=inf; } int a; cin>>a; dp[0][0]=dp[0][1]=a; REP(i,1,n){ cin>>a; REP(j,0,2){ dp[i][0]=max(dp[i][0],dp[i-1][j]+a); dp[i][0]=max(dp[i][0],dp[i-1][j]-a); dp[i][0]=max(dp[i][0],dp[i-1][j]*a); if(a!=0) dp[i][0]=max(dp[i][0],dp[i-1][j]/a); dp[i][1]=min(dp[i][1],dp[i-1][j]+a); dp[i][1]=min(dp[i][1],dp[i-1][j]-a); dp[i][1]=min(dp[i][1],dp[i-1][j]*a); if(a!=0) dp[i][1]=min(dp[i][1],dp[i-1][j]/a); } } p(dp[n-1][0]); return 0; }