#include #define all(v) v.begin(), v.end() #define rall(v) v.rbegin(), v.rend() #define rep(i,n) for (int i=0;i<(int)(n);i++) #define codefor int test;scanf("%d",&test);while(test--) #define yn(ans) cout<<(ans?"Yes":"No")< void scan(T& a){cin>>a;} template void scan(vector& vec){for(auto&& it:vec)scan(it);} void in(){} template void in(Head& head, Tail&... tail){scan(head);in(tail...);} //出力系 void print(const int& a){printf("%d",a);} void print(const long long& a){printf("%lld",a);} void print(const double& a){printf("%.15lf",a);} template void print(const T& a){cout< void print(const vector& vec){if(vec.empty())return;print(vec[0]);for(auto it=vec.begin();++it!= vec.end();){putchar(' ');print(*it);}} void out(){putchar('\n');} template void out(const T& t){print(t);putchar('\n');} template void out(const Head& head,const Tail&... tail){print(head);putchar(' ');out(tail...);} //デバッグ系 template void dprint(const T& a){cerr< void dprint(const vector& vec){if(vec.empty())return;cerr< void debug(const T& t){dprint(t);cerr< void debug(const Head& head, const Tail&... tail){dprint(head);cerr<<" ";debug(tail...);} int main(){ int n; in(n); int x,y; int ans=1; vector kouho={0,1,2,3,4,5,6,7,8,9,10,11,12}; rep(i,n){ in(x); rep(j,kouho.size()){ y=kouho[j]; vector vec={y%12,(y+2)%12,(y+4)%12,(y+5)%12,(y+7)%12,(y+9)%12,(y+11)%12}; if(count(all(vec),x)>=1){ continue; }else{ kouho.erase(kouho.begin()+j); j--; } } } if(kouho.size()==1)out(kouho[0]); else out(-1); }