#include <stdio.h>




int main()

{
	int n,x,r;
	scanf("%d %d", &n, &x);
	int niz[n-1],i,j=0;
	for (i=0;i<n;i++){
		scanf("%d",&niz[i]);
		if (niz[i]>x) j++;
	}
	if (j==n){
		int max=x;
		for (i=0;i<n;i++){
			if (niz[i]>max) max=niz[i];
		}
		r=max-x;
		printf("%d",r);
	}
	else{
		if (j==0){
			int min=x;
			for (i=0;i<n;i++){
				if (niz[i]<min) min=niz[i];
			}
			r=x-min;
			printf("%d",r);
		}
		else{
			int min=x,max=x;
			for (i=0;i<n;i++){
				if (niz[i]>max) max=niz[i];
			}
			for (i=0;i<n;i++){
				if (niz[i]<min) min=niz[i];
			}
			if ((x-min)<(max-x)){
				r=2*(x-min)+(max-x);
				printf ("%d",r);
			}
			else{
				r=2*(max-x)+(x-min);
				printf ("%d",r);
			}
		}
	}
	return 0;
}