AcWing 789. 数的范围
原题链接
简单
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
const int N = 1e5 + 5;
int n,q;
int arr[N];
int main(){
scanf("%d%d", &n, &q);
for(int i = 0; i < n; i++) scanf("%d", arr + i);
for(int i = 0; i < q; i++){
int k;
scanf("%d", &k);
int pos1 = lower_bound(arr, arr + n, k) - arr;//第一个大于或等于k的数字
if(arr[pos1] != k){
printf("-1 -1\n");
continue;
}else{
int pos2 = upper_bound(arr + pos1, arr + n, k) - arr;//第一个大于k的数字
printf("%d %d\n", pos1, pos2 - 1);
}
}
return 0;
}