输入第一行包含两个整数,分别是数组长度 n 和访问次数 m,中间用单个空格隔开。
第二行包含 n 个整数,依次给出数组各项(数组下标从 0 到 n-1)。第三行包含 m 个整数,需要访问的数组下标。对于每次访问,输出对应的数组元素。(前两空每空 2.5 分,其余每空 3 分,共 14 分) #include <iostream> using namespace std; const int SIZE = 100; int stack1[SIZE], stack2[SIZE]; int top1, top2; int n, m, i, j; void clearStack( ) { int i; for (i = top1; i < SIZE; i++) stack1[i] = 0; for (i = top2; i < SIZE; i++) stack2[i] = 0; } int main( ) { cin >> n >> m; for (i = 0; i < n; i++) cin >> stack1[i]; top1 = 1; top2 = 2; for (j = 0; j < m; j++) { cin >> i; while (i < top1 - 1) { top1--; 3; top2++; } while (i > top1 - 1) { top2--; 4; top1++; } clearStack( ); cout << stack1[5] << endl; } return 0; }