#include<iostream>
#include<algorithm>
#include<vector>
#include<queue>
#include<string>
#include<complex>
#define lol(i,n) for(int i=0;i<n;i++)
typedef long long ll;
using namespace std;
int a[60];
int n;
bool done[60];
bool F(int lim){
	lol(i,n)done[i]=false;
	int bef=-100;
	lol(i,n){
		if(a[i]-bef<lim)continue;
		bef=a[i];
		done[i]=true;
	}
	for(int i=n-1;i>=0;i--){
		if(done[i]==false){
			int x=24-a[i];
			if(x>24-lim)return false;
			if(x-bef<lim)return false;
			bef=x;
		}
	}
	return true;
}
int main(){
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	a[n]=0;
	n++;
	sort(a,a+n);
	int maxi=-1;
	for(int i=0;i<=12;i++){
		if(F(i)==true)maxi=i;
	}
	cout<<maxi<<endl;
	return 0;
}
