lower_bound
2026-03-28 15:09:57
发布于:江苏
3阅读
0回复
0点赞
这题可以使用 algorithm 的 lower_bound 函数。
lower_bound(begin,end,x) 表示在区间 [begin,end) 之间查找第一个大于等于 x 的数的地址,如果没找到返回 end。
所以,用 lower_bound(a+1,a+n+1,x) 查找并赋值给 p(这里的 p 的类型是 int*)。
如果 *p == x 表示找到了,输出 p-a;
否则输出 。
主要代码:
auto p = lower_bound(a+1,a+n+1,x);
if(*p == x) cout << p-a;
else cout << -1;
这里空空如也







有帮助,赞一个