1 #include <cstdio>
2 #include <iostream>
3 #include <queue>
4 #include <cstring>
5 using namespace std;
6 int n;
7 long long a[7],visit[1000010],dis[1000010],ans;
8 queue<int> Q;
9 int main()
10 {
11 freopen("sequence.in","r",stdin);
12 freopen("sequence.out","w",stdout);
13 scanf("%d",&n);
14 for (int i=1;i<=n;i++) scanf("%lld",&a[i]);
15 if (n==2)
16 {
17 printf("%lld",a[1]*a[2]-a[1]-a[2]);
18 return 0;
19 }
20 memset(dis,-1,sizeof(dis));
21 Q.push(0),visit[0]=1,dis[0]=0;
22 while (!Q.empty())
23 {
24 int u=Q.front(); Q.pop(),visit[u]=0;
25 for (int i=2;i<=n;i++)
26 {
27 long long v=(u+a[i]%a[1])%a[1];
28 if (dis[v]==-1||dis[u]+a[i]<dis[v])
29 {
30 dis[v]=dis[u]+a[i];
31 if (!visit[v]) Q.push(v),visit[v]=1;
32 }
33 }
34 }
35 ans=-1;
36 for (int i=1;i<a[1];i++) ans=max(ans,dis[i]);
37 printf("%lld",ans-a[1]);
38 }