没用二分 90分求助

P1678 烦恼的高考志愿

黄叶舞秋风 @ 2020-11-18 11:25:55

#include<bits/stdc++.h>
using namespace std;
int m,fen,n,b,i;
long long ans=0;
bool a[1000100];
int main()
{
    cin>>m>>n;
    memset(a,false,sizeof(a));
    for(i=1;i<=m;i++)
    {
        cin>>fen;
        a[fen]=true;
    }
    for(i=1;i<=n;i++)
    {
        cin>>b;
        int j=0;
        while(1)
        {
            if(a[b-j]||a[b+j])
            {
                ans+=j;
                break;
            }
            j++;
        }
    }
    cout<<ans;
    return 0;
} 

最后一个点不知道为什么过不了。。。


by ⚡小林子⚡ @ 2020-11-18 12:12:36

TLE?


by 黄叶舞秋风 @ 2020-11-18 12:29:57

WA


by 黄叶舞秋风 @ 2020-11-18 12:47:42

懂了 要考虑b-j,b+j越界的情况


|