样例能过但全WA!!求助大牛们
查看原帖
样例能过但全WA!!求助大牛们
1149836
thesadbee楼主2024/3/27 17:55

我在本地跑样例是正确的,也全部开了long long,请问为什么会全WA啊 求助各位大牛

#include <bits/stdc++.h>
using namespace std;
long long sch[100005];
long long stu[100005];
long long a,b,r,mid,sum;
long long l=0;

long long wit(long long i,long long r){
    long long p=abs(sch[i]-stu[r]);
    return p;
}

long long chag(long long i){
    r=a-1;
    while(l<r){
        mid=(l+r)/2;
        if(wit(l,i)>wit(r,i)){
            l=mid+1;
        }
        else{
            r=mid;
        }
    }
    return l;
}

int main(){
    scanf("%d %d",&a,&b);
    for(long long i=0;i<a;i++){
        scanf("%d",&sch[i]);
    }
    for(long long i=0;i<b;i++){
        scanf("%d",&stu[i]);
    }
    sort(sch,sch+a);
    sort(stu,stu+b);
    for(long long i=0;i<b;i++){
        long long t=chag(i);
        sum+=wit(t,i);
    }
    printf("%d",sum);
}
2024/3/27 17:55
加载中...