1 条题解
-
1
#include using namespace std; int a[1000001],b; int main(){ int m,n,s=0,c=0; long long num=0;//十年OI一场空,不开long long 见祖宗; cin>>m>>n; for(int i=1;i<=m;i++){ cin>>a[i];//输入; } sort(a+1,a+m+1);//排序; s=1e8; while(c<n){ cin>>b; c++; int l=1,r=m; while(l<r){ int mid=(l+r+1)/2; if(a[mid]<=b)l=mid; else r=mid-1;//二分搜索; } if(l+1<=m)num+=min(abs(b-a[l]),abs(a[l+1]-b));//特判,不然最后一个点会WA; else num+=abs(b-a[l]); } cout<<num;//输出答案; return 0; }
(抄题解没亩)
- 1
信息
- ID
- 688
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 9
- 标签
- 递交数
- 27
- 已通过
- 2
- 上传者