#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define MAX 100000
void ps(int a[],int low,int high) //快速排序
{
int key,i,j;
i=low;
j=high;
key=a[low];
if(low>high) return;
while(i<j)
{
while(key<=a[j] && i<j )
j--;
a[i]=a[j];
while(i<j && key>=a[i])
i++;
if(low<high)
a[j]=a[i];
}
a[i]=key;
ps(a,low,j-1);
ps(a,i+1,high);
}
int main()
{
int a[MAX],b[MAX];
int n,i,j,sum,mid;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n*2;i++)
{
scanf("%d",&a[i]);
}
for(i=1,j=0;i<n*2;j++,i=i+2)
{
b[j]=a[i];
}
ps(b,0,n-1);
sum = 0;
mid = b[(n-1) / 2];
for(i = 0; i < n; i++)
sum += abs(b[i] - mid); //找出中位数
printf("%d\n",sum);
}
return 0;
}
#include <math.h>
#include <stdlib.h>
#define MAX 100000
void ps(int a[],int low,int high) //快速排序
{
int key,i,j;
i=low;
j=high;
key=a[low];
if(low>high) return;
while(i<j)
{
while(key<=a[j] && i<j )
j--;
a[i]=a[j];
while(i<j && key>=a[i])
i++;
if(low<high)
a[j]=a[i];
}
a[i]=key;
ps(a,low,j-1);
ps(a,i+1,high);
}
int main()
{
int a[MAX],b[MAX];
int n,i,j,sum,mid;
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<n*2;i++)
{
scanf("%d",&a[i]);
}
for(i=1,j=0;i<n*2;j++,i=i+2)
{
b[j]=a[i];
}
ps(b,0,n-1);
sum = 0;
mid = b[(n-1) / 2];
for(i = 0; i < n; i++)
sum += abs(b[i] - mid); //找出中位数
printf("%d\n",sum);
}
return 0;
}