import java.util.*;


class Main{
public static void main(String[] args) {
  Scanner reader=new Scanner(System.in);
  int k=reader.nextInt();
  int n=reader.nextInt();
  int a[]=new int[n];
  int d=0;
  for(int i=0;i<n;i++)
  {
    a[i]=reader.nextInt();
  }
for(int i=1;i<n;i++)
{
  if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

}

}
if(k-a[n-1]+a[0]>d)
{
  d=k-a[n-1]+a[0];
}
System.out.println(k-d);
}
} import java.util.*; util.* java class Main{
public static void main(String[] args) {
  Scanner reader=new Scanner(System.in);
  int k=reader.nextInt();
  int n=reader.nextInt();
  int a[]=new int[n];
  int d=0;
  for(int i=0;i<n;i++)
  {
    a[i]=reader.nextInt();
  }
for(int i=1;i<n;i++)
{
  if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

}

}
if(k-a[n-1]+a[0]>d)
{
  d=k-a[n-1]+a[0];
}
System.out.println(k-d);
}
} Main public static void main(String[] args) {
  Scanner reader=new Scanner(System.in);
  int k=reader.nextInt();
  int n=reader.nextInt();
  int a[]=new int[n];
  int d=0;
  for(int i=0;i<n;i++)
  {
    a[i]=reader.nextInt();
  }
for(int i=1;i<n;i++)
{
  if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

}

}
if(k-a[n-1]+a[0]>d)
{
  d=k-a[n-1]+a[0];
}
System.out.println(k-d);
} main {
  Scanner reader=new Scanner(System.in);
  int k=reader.nextInt();
  int n=reader.nextInt();
  int a[]=new int[n];
  int d=0;
  for(int i=0;i<n;i++)
  {
    a[i]=reader.nextInt();
  }
for(int i=1;i<n;i++)
{
  if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

}

}
if(k-a[n-1]+a[0]>d)
{
  d=k-a[n-1]+a[0];
}
System.out.println(k-d);
} Scanner reader=new Scanner(System.in); reader new Scanner(System.in) int k=reader.nextInt(); k reader.nextInt() reader.nextInt reader int n=reader.nextInt(); n reader.nextInt() reader.nextInt reader int a[]=new int[n]; a new int[n] n int d=0; d 0 for(int i=0;i<n;i++)
  {
    a[i]=reader.nextInt();
  } int i=0; int i=0; i 0 i<n i n i++ i++ i {
    a[i]=reader.nextInt();
  } {
    a[i]=reader.nextInt();
  } a[i]=reader.nextInt() a[i] a i reader.nextInt() reader.nextInt reader for(int i=1;i<n;i++)
{
  if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

}

} int i=1; int i=1; i 1 i<n i n i++ i++ i {
  if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

}

} {
  if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

}

} if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

} a[i]-a[i-1]>d a[i]-a[i-1] a[i] a i a[i-1] a i-1 i 1 d {
  d=a[i]-a[i-1];

} d=a[i]-a[i-1] d a[i]-a[i-1] a[i] a i a[i-1] a i-1 i 1 if(k-a[n-1]+a[0]>d)
{
  d=k-a[n-1]+a[0];
} k-a[n-1]+a[0]>d k-a[n-1]+a[0] k-a[n-1] k a[n-1] a n-1 n 1 a[0] a 0 d {
  d=k-a[n-1]+a[0];
} d=k-a[n-1]+a[0] d k-a[n-1]+a[0] k-a[n-1] k a[n-1] a n-1 n 1 a[0] a 0 System.out.println(k-d) System.out.println System.out System System.out k-d k d String[] args args
import java.util.*;


class Main{
public static void main(String[] args) {
  Scanner reader=new Scanner(System.in);
  int k=reader.nextInt();
  int n=reader.nextInt();
  int a[]=new int[n];
  int d=0;
  for(int i=0;i<n;i++)
  {
    a[i]=reader.nextInt();
  }
for(int i=1;i<n;i++)
{
  if(a[i]-a[i-1]>d){
  d=a[i]-a[i-1];

}

}
if(k-a[n-1]+a[0]>d)
{
  d=k-a[n-1]+a[0];
}
System.out.println(k-d);
}
}