#include <fstream>
using namespace std;
ifstream f("jocul.in");
ofstream g("jocul.out");
const int N = 1e3, S = 50 * N + 1;
int n, l[N], dp[S], s, ans;
int main(){
f >> n;
for(int i = 0; i < n; i++){
f >> l[i];
s += l[i];
}
f.close();
for(int j = 1; j <= s / 2; j++)
dp[j] = -1;
for(int i = 0; i < n; i++){
for(int j = s / 2 - l[i]; j >= 0; j--){
if(dp[j] != -1)
dp[j + l[i]] = max(dp[j + l[i]], dp[j] + l[i]);
}
}
for(int j = 1; j <= s / 2; j++)
ans = max(ans, dp[j]);
g << ans << ' ' << s - ans;
g.close();
}