4 条题解

  • 1
    @ 2025-9-20 14:17:21
    #include<bits/stdc++.h>
    using namespace std;
    long long a[10000000],b[1000000],n,x,nnn;
    int main(){
        cin >> n >> x;
        for(int i=0; i<n; i++){
            cin >> a[i];
        }
        for(int i=0; i<x; i++){
            int l=0,r=n-1,mid=0,ans;
            bool f=0;
            cin >> ans;
            while(l<=r){
                mid=(l+r)/2;
                
                if(a[mid]==ans){
                    
                    f=1;
                    r=mid-1;
                    nnn=mid;
                }
                if(a[mid]<ans) l=mid+1;
                else r=mid-1;
            }
    
            if(f==0) cout << -1 << "\n";
            else cout << nnn+1 << "\n";
        }
        return 0;
    }
    

    信息

    ID
    3098
    时间
    1000ms
    内存
    256MiB
    难度
    2
    标签
    递交数
    96
    已通过
    20
    上传者