/*
1645 연산자 끼워넣기 문제
10분컷
시작합니다.
*/
#include <iostream>
#include <algorithm>
using namespace std;
int minVal = 2123456789;
int maxVal = -2123456789;
int N;
int numArr[13];
int oper[4];
void problemIn() {
cin >> N;
for (int i = 0; i < N; i++) {
cin >> numArr[i];
}
for (int i = 0; i < 4; i++) {
cin >> oper[i];
}
}
void dfs(int depth, int a, int b, int c, int d, int sum) {
if (depth == (N)) {
minVal = min(minVal, sum);
maxVal = max(maxVal, sum);
}
if (a > 0) {
dfs(depth + 1, a - 1, b, c, d, sum + numArr[depth]);
}
if (b > 0) {
dfs(depth + 1, a, b - 1, c, d, sum - numArr[depth]);
}
if (c > 0) {
dfs(depth + 1, a, b, c - 1, d, sum*numArr[depth]);
}
if (d > 0) {
dfs(depth + 1, a, b, c, d - 1, sum / numArr[depth]);
}
}
void solve() {
dfs(1, oper[0], oper[1], oper[2], oper[3], numArr[0]);
}
int main() {
problemIn();
solve();
cout << maxVal << endl;
cout << minVal << endl;
return 0;
}