#include<bits/stdc++.h>
#define endl '\n'
#define int long long
using namespace std;
constexpr int N=1e3+10;
constexpr int mod=1e9+7;
int f[N];
bool v[N];
int n;
int total=0;
int len;
void dfs(int tmp,int num,int cnt,int res)
{
if(cnt==res)
{
cout << len;
exit(0);
}
if(num==len)
{
dfs(1,0,cnt+1,res);
}
int p=0;
for(int i=tmp;i<=n;i++)
{
if(!v[i]&&f[i]+num<=len&&p!=f[i])
{
v[i]=true;
p=f[i];
dfs(tmp+1,num+f[i],cnt,res);
v[i]=false;
if(num==0||num+f[i]==len)
return;
}
}
}
void solve()
{
int tmp=0;
cin >> n;
for(int i=1;i<=n;i++)
{
cin >> f[i];
total+=f[i];
tmp=max(tmp,f[i]);
}
sort(f+1,f+n+1,greater<int>());
for(int i=tmp;i<=total;i++)
{
if(total%i==0)
{
len=i;
dfs(1,0,0,total/i);
}
}
}
signed main()
{
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
solve();
return 0;
}