#B4423. [语言月赛 202510] 数组嵌套
[语言月赛 202510] 数组嵌套
题目描述
现有两个长为 的数组 和 。保证 。注意下标从 开始。
在 C++ 中,我们分别使用表达式 a[i] 和 b[i] 来表示 和 ,其中 是一个数字,表示下标。
如果我们接着在表达式两侧嵌套 a[...] 和 b[...],我们就实现了数组嵌套,产生形如 a[b[a[a[15]]]] 的表达式。
给出数组 和一个数组嵌套形成的表达式,你需要计算这个表达式的值。
输入格式
输入共四行。
第一行有一个正整数 ,表示数组 的长度。
第二行有 个正整数 。
第三行有 个正整数 。
最后一行有一个字符串,表示要计算的数组嵌套表达式。
输出格式
输出一行一个正整数,表示答案。
4
2 4 1 3
1 2 4 3
a[a[b[4]]]
2
4
1 2 4 3
2 4 1 3
b[b[3]]
2
12
3 6 6 4 2 3 8 1 9 11 12 5
6 8 3 2 9 1 10 5 12 4 11 7
a[b[b[a[b[b[a[a[12]]]]]]]]
2
提示
【样例 1 解释】
b[4] 是 ,因此 a[b[4]] 等于 a[3] 即 ,进而得出 a[a[b[4]]] 等于 a[1],故输出 。
【数据范围】
用 表示数组嵌套层数,例如样例中 。
对于全部数据,保证 (十万),且表达式中数组不会越界。
本题共有 个测试点,部分测试点有特殊性质,具体如下( 表示测试点具有该性质,空白表示不保证具有该性质):
| 测试点编号 | 特殊性质 A | 特殊性质 B | |
|---|---|---|---|
- 特殊性质 A:表达式中的数字是一位数。
- 特殊性质 B:表达式中不会出现字符
a。