qwq
#include <bits/stdc++.h>
using namespace std ;
int main ()
{
int l , n ; int a[5200] , b[5200][2] ;
int minn , maxn , ttime ;
int zll = -1 , zrr = 5200 ;
bool qwq = 1 ;
cin >> l >> n ;
for ( int i = 1 ; i <= n ; i ++ )
{
cin >> a[i] ;
if ( a[i] >= l / 2 )
{
b[i][1] = a[i] ;
if ( b[i] > zrr ) zrr = i ;
}
else
{
b[i][0] = a[i] ;
if ( b[i] > zll ) zll = i ;
}
}
while ( qwq )
{
for ( int i = 1 ; i <= n ; i ++ )
{ b[i][0] -- ; b[i][1] ++ ; }
if ( b[zll] <= 0 && b[zrr] >= l+1 )
qwq = 0 ;
minn ++ ;
}
cout << minn ;
return 0 ;
}