Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
335451 黄浙峰老师 【C6-8】二分查找右侧边界 C++ 通过 100 84 MS 652 KB 457 2025-07-23 09:32:15

Tests(10/10):


#include<bits/stdc++.h> using namespace std; const int N=100010; int a[N]; int n,q,l,r,mid; int fun(int x){ l=1; r=n; while(l<=r){ mid=(l+r)>>1; if(x<a[mid]) r=mid-1; else l=mid+1; } if(a[r]==x) return r; else return -1; } int main(){ scanf("%d", &n); for(int i=1; i<=n; i++){ scanf("%d", &a[i]); } scanf("%d", &q); int x; for(int i=1; i<=q; i++){ scanf("%d",&x); printf("%d ",fun(x)); } return 0; }


测评信息: