#include<bits/stdc++.h>
using namespace std;
void msort(int L,int R,int A[]){
int tmp[R+10];
if(L==R)return;int mid=(L+R)>>1;
msort(L,mid,A);msort(mid+1,R,A);
int i=L,j=mid+1,k=L;
for(;i<=mid&&j<=R;){if(A[i]<A[j])tmp[k++]=A[i++];
else tmp[k++]=A[j++];}
for(;i<=mid;)tmp[k++]=A[i++];for(;j<=R;)tmp[k++]=A[j++];for(int i=L;i<=R;i++)A[i]=tmp[i];
}
const double c=10e-7;
int n,a[1000+10];
bool is;
int main(){
cin>>n;
for (int i=1;i<=n;i++){
cin>>a[i];a[i]++;
}
msort(1,n,a);
for (float i=a[1];i>=c;i=i-c){
is=0;
for (int j=i;j<=n;j++){
int k=a[j]/i;
if (i*k<=a[j]-1){
is=1;
break;
}
}
if (!is){
printf("%.7f",i);
return 0;
}
}
return 0;
}