#include<iostream>
#include<algorithm>
int a[200005];
int n;
using namespace std;
int main()
{
cin >> n;
int cnt = 0;
for (int i = 1; i <= n; i++)
{
int x;
cin >> x;
if (x == a[i - 1] && cnt != 0)continue;
a[++cnt] = x;
}
if (cnt < 2)
{
cout << -1;
return 0;
}
sort(a + 1, a + cnt + 1);
int Max2 = max(a[cnt] % a[cnt - 1], a[cnt - 2] % a[cnt]);
cout << Max2;
return 0;
}