每日一句,送给最珍贵的你:
人生不可测,在任何时候,都要抱着一份希望。—— 董卿
小编由于昨天代码有误,是可以用线性表写的,不过数组看上去更简单,于是就改成了数组,哈哈哈。
有名同学陆陆续续进入教室。我们知道每名同学的学号(在1到10^9 之间),按进教室的顺序给出。上课了,老师想知道第 ii 个进入教室的同学的学号是什么(最先进入教室的同学 i=1,询问次数不超过 10^5次。)
第一行 2 个整数 n 和 m,表示学生个数和询问次数。
第二行 n 个整数,表示按顺序进入教室的学号。
第三行 m 个整数,表示询问第几个进入教室的同学。
m 个整数表示答案,用换行隔开。
10 3
1 9 2 60 8 17 11 4 5 14
1 5 9输出1
8
5源代码:
#include<stdio.h>
int main(){
int n1,n,m,d1;
scanf("%d %d",&n ,&m);
long int d[n];
for(n1=1;n1<=n;n1++){
scanf("%d",&d[n1]);
}
while(m--){
scanf("%d",&d1);
if(m==0){
printf("%d",d[d1]);
}
else{
printf("%d\n",d[d1]);
}
}
return 0;
}运行结果:

