【深基15.例1】询问学号

题目描述

n(n2×106)n(n \le 2 \times 10^6) 名同学陆陆续续进入教室。我们知道每名同学的学号(在 1110910^9 之间),按进教室的顺序给出。上课了,老师想知道第 ii 个进入教室的同学的学号是什么(最先进入教室的同学 i=1i=1),询问次数不超过 10510^5 次。

输入格式

第一行 22 个整数 nnmm,表示学生个数和询问次数。

第二行 nn 个整数,表示按顺序进入教室的学号。

第三行 mm 个整数,表示询问第几个进入教室的同学。

输出格式

输出 mm 个整数表示答案,用换行隔开。

样例 #1

样例输入 #1

10 3
1 9 2 60 8 17 11 4 5 14
1 5 9

样例输出 #1

1
8
5
#include <stdio.h>
int arr[2000001];
int main(void) {
    int n,m;
    scanf("%d %d",&n,&m);
    for(int i = 1;i<=n;i++){
        scanf("%d",&arr[i]);
    }
    for(int j = 0;j<m;j++){
        int x;
        scanf("%d",&x);
        printf("%d\n",arr[x]);
    }

}