#include<stdio.h>
#include<math.h>
#include<stdlib.h>
main()
{
int *niz,n,x,i;
scanf("%d%d",&n,&x);
niz=(int*)malloc(n*sizeof(int));
for(i=0;i<n;i++)
scanf("%d",niz+i);
int levo=*(niz+0),desno=*(niz+(n-1));
for(i=1;i<n;i++)
{
if(*(niz+i)<levo)
levo=*(niz+i);
if(*(niz+(n-i-1))>desno)
desno=*(niz+(n-i-1));
}
if(desno<x)
printf("%d",x-levo);
else if(levo>x)
printf("%d",desno-x);
else
printf("%d",(x-levo)+(desno-levo));
}