T618087 SUMMER SOLSTICE
题目背景
亲爱精诚的小 C 研发了一款全新自主研发的开放性冒险游戏 SUMMER SOLSTICE(全称 Sun's Ultimate March: Moving Eastward, Reaching Summer solstice Over Long Stretches, Time Is Critical, Endeavor)!
作为小 C 的朋友,小廖准备玩这个游戏,请你帮助他!
题目描述
这一切的一切,都要从这个游戏开始说起……这是一款回合制冒险游戏,里面有各种陷阱。为了方便小廖游玩,你偷偷将地图的每一个格子都改成了陷阱!\(\^\_\^\)
### 游戏规则
每回合若没有触发陷阱,则前进一格。
每一个陷阱均有效果,这里用字符来对应每种效果。
1. 「区间跳跃」,用 `[` 或 `]` 表示。
向左侧或右侧跳到离当前位置**最近的相匹配的**「区间跳跃」。其中,`[` 需要向右跳到离当前位置最近的 `]`,`]` 需要向左跳到离当前位置最近的 `[`。
2. 「真陷阱」,用 `#` 表示。
暂停 $3$ 回合(**包括本回合**)。每个「真陷阱」**只能被触发一次**。
3. 「结束了?」,用 `^` 表示。
返回起点。每个「结束了?」**只能被触发一次**。
4. 「快进」,用 `>` 表示。
当右侧**紧随至少两个**「快进」时,直接走到最右侧的「快进」处。每个「快进」**只能被触发一次**。
5. 「机遇?」,用 `*` 表示。
第 $i$ 个「机遇?」对应着一个 $a_i$,表示一个范围为 $[-3,6]$ 的整数,走对应的步数。其中正数表示向右侧,负数表示向左侧。
6. 「空」,用 `@` 表示。
小廖所选角色的属性刚好免疫此效果,故无任何效果。
看到这些规则后,小廖觉得这个游戏非常的难,他强迫你充当他的助手。小廖会告诉你一个整数 $m$,你需要求出 $m$ 回合之后小廖棋子所到格子的坐标(起点为 $0$,不计入地图)。
输入格式
输入共 $3$ 行。
第一行,输入两个整数 $n$ 和 $m$。
第二行,输入一个字符串,表示长度为 $n$ 的游戏地图 $s$。
第三行,输入若干数字,第 $i$ 个数 $a_i$ 对应一个「机遇?」走的步数。
输出格式
输出共 $1$ 行。
第一行,输出一个整数,表示 $m$ 回合之后小廖棋子所到格数的坐标。
说明/提示
### 样例解释
接下来将用字符 `L` 来表示小廖的位置。
第 $1$ 回合,`L@@*>>>@[>>@>*]#@@@][#]`;
第 $2$ 回合,`@L@*>>>@[>>@>*]#@@@][#]`;
第 $3$ 回合,`@@L*>>>@[>>@>*]#@@@][#]`;
第 $4$ 回合,`@@@*>>L@[>>@>*]#@@@][#]`(触发「机遇?」后继续触发「快进」);
第 $5$ 回合,`@@@*>>>L[>>@>*]#@@@][#]`;
第 $6$ 回合,`@@@*>>>@[>>@>*L#@@@][#]`(触发「区间跳跃」);
第 $7 \sim 9$ 回合,`@@@*>>>@[>>@>*]L@@@][#]`(触发 「真陷阱」);
第 $10$ 回合,`@@@*>>>@[>>@>*]#L@@][#]`;
第 $11$ 回合,`@@@*>>>@[>>@>*]#@L@][#]`。
故答案为 $18$。
### 数据范围
对于 $100\%$ 的数据,$10 \le n \le 10^4$,$1 \le m \le 10^4$,保证地图上的每种陷阱触发后都不会超出地图范围。