#include #include #include using namespace std; #define MAX 16 vector v; int main(){ int way = 1; int n; cin >> n; for (int i = 0; i < n; i++){ int a; scanf("%d", &a); v.push_back(a); } int bet = n - 1; for (int i = 0; i < bet; i++){ way *= 3; } long long int ans = LLONG_MIN; for (int i = 0; i < way; i++){ long long int sum = v[0]; int x = i; for (int j = 0; j < bet; j++,x/=3){ if (x % 3 == 0){ if (sum < 0){ sum -= abs(v[j + 1]); } else{ sum += abs(v[j + 1]); } continue; } if (x % 3 == 1){ sum *= v[j+1]; continue; } if (x % 3 == 2){ if (v[j+1] == 0){ sum *= v[j+1]; } else{ sum /= v[j+1]; } } } ans = max(ans, sum); } printf("%lld\n", ans); return 0; }