解题思路:
注意事项:
参考代码:
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int compare(const void* a, const void* b)
{
int num_a = *(int*)a;
int num_b = *(int*)b;
if (num_a < num_b)
return -1;
else if (num_a > num_b)
return 1;
else
return 0;
}
int main()
{
int n, i,*a,*b,max=0,size;
scanf("%d", &n);
a = (int*)malloc(n * sizeof(int));
b = (int*)malloc(n * sizeof(int));
for (i = 0; i < n; i++)
scanf("%d", &a[i]);
for (i = 0; i < n; i++)
scanf("%d", &b[i]);
size = n;
qsort(a, size, sizeof(int), compare);
qsort(b, size, sizeof(int), compare);
for (i = 0; i < n; i++)
{
max += abs(a[i] - b[n - 1 - i]);
}
printf("%d", max);
return 0;
}
0.0分
0 人评分