我居然连这个代码我都找不出来我打错的原因(违规自删)
查看原帖
我居然连这个代码我都找不出来我打错的原因(违规自删)
355424
Lish_Xizse楼主2021/8/21 23:35
#include<iostream>
#define MAXN 1000010
using namespace std;
int a[MAXN],m,n,q;
int find(int x){
    int l=1,r=n;
    while(l<=r){
        int mid=(l+r)/2;
        if(a[mid]==x)return mid;
        else if(a[mid]>x)r=mid-1;
        else l=mid+1;
    }
    return -1;
}
int main()
{
    cin >> n >> m;
    for(int i=1;i<=n;++i)
        cin >> a[i];
    for(int i=0;i<m;++i){
        cin >> q;
        cout << find(q) << " ";
    }
    return 0;
}
2021/8/21 23:35
加载中...