好好好 输出还要存到列表里
2024-02-13 13:28:51
发布于:湖南
35阅读
0回复
0点赞
#include <iostream>
#include <cstdio>
using namespace std;
int a[1000005], b[1000005];
int n, m, x, ct;
int get_(int x){
int left = 1, right = n;
while(left < right){
int mid = (left + right) / 2;
if(x > a[mid]) left = mid + 1;
else right = mid;
}if(a[left] != x) return -1;
return left;
}
int main(){
scanf("%d %d ", &n, &m);
for(int i = 1; i <= n; i++){
scanf("%d ", &a[i]);
}while(m--){
cin >> x;
b[++ct] = get_(x);
}for(int i = 1; i <= ct; i++){
printf("%d ", b[i]);
}
return 0;
}
这里空空如也
有帮助,赞一个