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

· · 题解

不明白为什么是普及-?

难度虚高,新手勿慌

好像我没强到那里去

不需要数组,因为每个sum只使用一次

其他就是要看清n的范围,有常数

注意不要把数组开在主函数里,首先是主函数的栈空间小,其次是CCF的机子是开几个数组算几个,而各大OJ是用多少数组算几个,注意考场别爆0

我就是过来人

Code:
#include<cstdio>
int a[2000001];//2*10^6
int main()
{
    int n,m,sum;//注意不要把数组开在主函数里
    scanf("%d %d",&n,&m);
    for(int i=1;i<=n;i++)
        scanf("%d",&a[i]);
    for(int i=1;i<=m;i++)
    {
        scanf("%d",&sum);//询问学号
        printf("%d\n",a[sum]);
    }
}