70分,哪儿有问题;佬们
查看原帖
70分,哪儿有问题;佬们
1136226
yhm_22344楼主2024/1/21 12:40
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>

using namespace std;

const int N = 1e5 + 10;

int arr[N], rell[N];

int n, m;

int main()
{
	//m为学校数,n为学生数
	cin >> m >> n;

	//arr[i]表示学校预计录取分数线
	//rell[i]表示学生估分
	for (int i = 0; i < m; i++)	cin >> arr[i];

	sort(arr, arr + m);

	long long res = 0;
	for (int  i= 0; i < n; i++)
	{
		cin >> rell[i];
		int l = 0, r = m - 1;
		while (l < r)
		{
			int mid = l + r >> 1;
			if (arr[mid] >= rell[i])	r = mid;
			else    l = mid + 1;
		}
		res += min(abs(arr[l] - rell[i]), min(abs(arr[l - 1] - rell[i]), abs(arr[l+1] - rell[i])));
	}

	cout << res << endl;

	return 0;
}
2024/1/21 12:40
加载中...