#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define mp make_pair #define pb push_back #define all(x) (x).begin(),(x).end() #define YES() printf("YES\n") #define NO() printf("NO\n") using namespace std; #define int long long //typedef long long ll; typedef unsigned long long ull; typedef vector vb; typedef vector vi; typedef vector vvb; typedef vector vvi; typedef pair P; const int INF=1e+9; const double EPS=1e-9; const int MOD=1000000007; const int dx[]={1,0,-1,0},dy[]={0,-1,0,1}; signed main(){ int n,a[16],res = 0; cin >> n; for(int i = 0;i < n;i++) { cin >> a[i]; if(!i) res = a[i]; else{ if(a[i]) res = max(max(res + a[i],res - a[i]),max(res * a[i],(int)floor((double)res / (double)a[i]))); else res = res = max(max(res + a[i],res - a[i]),res * a[i]); } } cout << res << endl; return 0; }