西安注册公司在哪个网站,网站建设难吗,品牌宣传推广方案,个人简单网站页P2249 【深基13.例1】查找 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
思路#xff1a;
①二分查找
②stl函数#xff1a;lower_bound(a.begin(),a.end(),x) 返回第一个大于等于 x的数的地址
代码#xff1a;
#includeiostream
#includealgorithm
…
P2249 【深基13.例1】查找 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
思路
①二分查找
②stl函数lower_bound(a.begin(),a.end(),x) 返回第一个大于等于 x的数的地址
代码
#includeiostream
#includealgorithm
using namespace std;int n, m;
int a[1000005];//int find(int x) //二分查找
//{
// int l 1, r n;
// while (l r)
// {
// int mid l (r - l) / 2;
// if (a[mid] x) r mid;
// else l mid 1;
// }
//
// if (a[l] x) return l; //找都了就输出他的位置
// else return -1; // 没找到输出-1
//}
//
int main()
{cin n m;for (int i 1; i n; i){cin a[i];//待查询}while (m--){int x;cin x;int ans lower_bound(a 1, a n 1, x) - a;//可换二分查找if (x a[ans])//找到了{cout ans ;}elsecout -1 ;}return 0;
}
总结记二分查找代码和lower_bound用法