60分求助,2,3,8,10WA!!!!!在线等,急!!!
查看原帖
60分求助,2,3,8,10WA!!!!!在线等,急!!!
766858
billifs2楼主2022/8/6 11:50
#include<bits/stdc++.h>
using namespace std;
int n,m,a[100000],b,c,xx;
int main(){
	scanf("%d%d",&m,&n);;
	for(int i=1;i<=m;i++)cin>>a[i];
	sort(a+1,a+m+1);
	for(int i=1;i<=n;i++)
	{
		scanf("%d",&b);
		int l=1,r=m,mid;
		while(l<r)
		{
			mid=(l+r)/2;
			if(b>a[mid])l=mid+1;
			else r=mid;	
		}
		c=abs(b-a[l]);
		c=min(c,abs(b-a[l-1]));
		xx+=min(abs(b-a[l+1]),c);
	}
	printf("%d",xx);
	return 0;
}
2022/8/6 11:50
加载中...