#include <bits/stdc++.h>
using namespace std;
long double a[1000005];
inline bool check(long double x,int n,long double k)
{
long double sum = a[1] + x;
for(int i = 2;i <= n;i ++)
{
if(a[i] - x - sum > k)
{
return false;
}
if(a[i] + x < sum)
{
sum += a[i] + x;
}
sum += k;
}
return true;
}
int main()
{
long double k;
int n;
cin >> k >> n;
for(int i = 1;i <= n;i ++)
{
cin >> a[i];
}
long double l2 = 0,r = a[n],mid,ans = 0;
while(r - l2 >= 1e-10)
{
mid = (l2 + r) / 2.000;
if(check(mid,n,k))
{
ans = mid;
r = mid;
}
else
{
l2 = mid;
}
}
cout << fixed << setprecision(3) << ans;
}