当前位置: 首页> 文旅> 艺术 > 关键词整站优化公司_网络设计是干什么的呢_网络竞价推广开户_seo免费优化工具

关键词整站优化公司_网络设计是干什么的呢_网络竞价推广开户_seo免费优化工具

时间:2025/7/9 12:31:12来源:https://blog.csdn.net/2401_82748667/article/details/146163711 浏览次数:2次
关键词整站优化公司_网络设计是干什么的呢_网络竞价推广开户_seo免费优化工具

答案

#include <bits/stdc++.h>
//洛谷2249
using namespace std;const int N = 1e6+10;
int n,m;
int a[N];int Array_Search(int a[],int len,int x)
{int L = 0,R = len+1;while(L+1 < R){int mid = (R+L) >> 1;if(a[mid] < x ) L = mid;else R = mid;}if(a[R] == x) return R;return -1;
}int main() {cin >> n >> m;for(int i = 1;i<=n;i++){cin >> a[i];}sort(a+1,a+1+n);for(int i = 1;i<=m;i++){int t ;cin >> t;int res = Array_Search(a,n,t);cout << res << " ";}return 0;
}

思路:

        对于二分题,第一件事就是考虑题目给出的数组是否是按升序,或者降序排列的。如果不是,那么先进行处理数组。

        对于Array_Search函数,一般都是传入三个量,分别是数组长度待查数

        无论是查找一个数出现第一次的下标,还是最后一次的下标。L与R都应该放在数组的两侧,而不是待查找数组内部

        最后一次出现的下标

int Array_search2(int a[],int len,int x)
{int L = 0,R = len+1;while(L+1 < R){int mid = (R+L) >> 1;if(a[mid] <= x ) L = mid;else R = mid;}if(a[L] == x) return L;return -1;
}

      次出现的下标

int Array_Search(int a[],int len,int x)
{int L = 0,R = len+1;while(L+1 < R){int mid = (R+L) >> 1;if(a[mid] < x ) L = mid;else R = mid;}if(a[R] == x) return R;return -1;
}

       重点是while内的判断条件,if内的判断条件,if后的执行条件,return的判断条件和返回值

关键字:关键词整站优化公司_网络设计是干什么的呢_网络竞价推广开户_seo免费优化工具

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: