O(2e5 + n + m),不愧是我(
2024-02-17 11:17:23
发布于:广东
18阅读
0回复
0点赞
#include <iostream>
#include <cstdio>
using namespace std;
int a[100005], xiabiao[200005], ans[100005];
int n, m, x, ct;
void _init(){
for(int i = 1; i <= 200005; i++){
xiabiao[i] = 0x3f3f3f3f;
}
for(int i = 1; i <= n; i++){
xiabiao[a[i] + 100000] = i;
}
}
int main(){
scanf("%d%d", &n, &m);
for(int i = 1; i <= n; i++){
scanf("%d", &a[i]);
}_init();
while(m--){
scanf("%d", &x);
if(xiabiao[x + 100000] == 0x3f3f3f3f) ans[++ct] = -1;
else ans[++ct] = xiabiao[x + 100000];
}for(int i = 1; i <= ct; i++){
printf("%d\n", ans[i]);
}
return 0;
}
全部评论 1
时间最短,也是最离谱的一集()
2024-02-17 来自 广东
0
有帮助,赞一个