求助,#0 TLE了五个点
查看原帖
求助,#0 TLE了五个点
86461
Da_Capo_楼主2023/6/20 16:13
#include<bits/stdc++.h>
using namespace std;
int n,m,sch[100002],stu[100002];
long long Find(int k) {
	int i=1;
	while(k>sch[i])i++;
	int x1=sch[i]-k;
	int x2=k-sch[i-1];
	return x1<x2?x1:x2;
}
int main() {
	ios::sync_with_stdio(0);
	cin>>n>>m;
	for(int i=1; i<=n; i++) {
		cin>>sch[i];
	}
	sort(sch+1,sch+1+n);
	long long sum=0;
	for(int i=1; i<=m; i++) {
		cin>>stu[i];
		if(stu[i]<sch[1])
			sum+=sch[1]-stu[i];
		else if(stu[i]>sch[n])
			sum+=stu[i]-sch[n];
		else
			sum+=Find(stu[i]);
	}
	cout<<sum;
	return 0;
}
2023/6/20 16:13
加载中...