@[PURE_LOVE](/user/1189413) 你把vector数组定义成全局它就不会超时了。
by tanlihan @ 2024-03-19 14:37:51
@[tanlihan](/user/1073511) 感谢佬,刚学着用vector还不是很明白,谢谢佬
by PURE_LOVE @ 2024-03-19 14:52:50
@[tanlihan](/user/1073511) 佬
我改完之后re了,是为什么啊
```c
#include<bits/stdc++.h>
using namespace std;
int n = 0, m = 0;
vector<int>arr(1000001);
vector<int>brr(10001);
int mark = 0;
int chazhao(int a,int left,int right)
{
int mid = (left + right) / 2;
if (left>= right)
{
if (arr[left]==a)
return left+1;
else
return -1;
}
else if(arr[mid] >= a)
{
return chazhao(a, left, mid);
}
else
{
return chazhao(a, mid+1, right);
}
}
int main()
{
scanf("%d%d", &n, &m);
for (int i = 0; i < n; i++)
{
scanf("%d", &arr[i]);
}
for (int i = 0; i < m; i++)
{
scanf("%d", &brr[i]);
int temp=chazhao(brr[i], 0, n - 1);
printf("%d ", temp);
}
}```c
by PURE_LOVE @ 2024-03-19 15:06:33
@[PURE_LOVE](/user/1189413) $1 \le m \le 10 ^ 5$,你开的是 $10^4$
by tanlihan @ 2024-03-19 15:21:49
@[tanlihan](/user/1073511) 爱了爱了
by PURE_LOVE @ 2024-03-19 15:55:38