1 条题解
-
0
#include<bits/stdc++.h> using namespace std; int a[10000005],b[10000005]; int n,s,q,m; int main(){ scanf("%d",&n); scanf("%d",&m); for(int i=1;i<=n;i++){ scanf("%d",&a[i]); } for(int i=0;i<m;i++){ scanf("%d",&b[i]); } for(int i=0;i<m;i++){ int l=1,r=n,d=0; while(l<=r){ int mid =l + (r-l)/2; if(a[mid]==b[i]){ printf("%d\n",mid); d++; break; }else if(a[mid]<b[i]){ l=mid+1; }else if(a[mid]>b[i]){ r=mid-1; } } if(d!=1){ printf("%s\n","-1"); } } }
- 1
信息
- ID
- 229
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 8
- 标签
- 递交数
- 52
- 已通过
- 8
- 上传者