#include using namespace std; typedef long long ll; typedef pair P; #define DUMP(x) cout << #x << " = " << (x) << endl; #define FOR(i, m, n) for (ll i = m; i < n; i++) #define IFOR(i, m, n) for (ll i = n - 1; i >= m; i--) #define REP(i, n) FOR(i, 0, n) #define IREP(i, n) IFOR(i, 0, n) #define FOREACH(x, a) for (auto&(x) : (a)) #define ALL(v) (v).begin(), (v).end() #define SZ(x) ll(x.size()) int main() { ll n; cin >> n; vector a(n); REP(i, n) { cin >> a[i]; } vector t = {0, 2, 4, 5, 7, 9, 11}; vector ans; REP(d, 12) { set st; for (ll x : t) { st.insert((d + x) % 12); } bool ok = true; REP(i, n) { if (st.find(a[i]) == st.end()) { ok = false; } } if (ok) { ans.push_back(d); } } if (SZ(ans) == 1) { cout << ans[0] << endl; } else { cout << -1 << endl; } }