SP7019 ZIGZAG - Zig-Zag rabbit
题目描述
在一个 $N \times N$ 的矩阵中,数字从 $1$ 到 $N^2$ 以锯齿形对角线的方式填充。
以下是当 $N = 6$ 时矩阵中的数字排列:
| 1 | 2 | 6 | 7 | 15 | 16 |
|:--:|:--:|:--:|:--:|:--:|:--:|
| 3 | 5 | 8 | 14 | 17 | 26 |
| 4 | 9 | 13 | 18 | 25 | 27 |
| 10 | 12 | 19 | 24 | 28 | 33 |
| 11 | 20 | 23 | 29 | 32 | 34 |
| 21 | 22 | 30 | 31 | 35 | 36 |
在编号为 1 的单元格中有一只兔子。兔子可以跳到与之相邻的单元格(可以是上、下、左、右),但前提是该单元格存在。
根据给出的 $K$ 次有效跳跃,编写一个程序来计算兔子所到达的所有单元格内数字的总和(每次到达时都要把该单元格的数字加到总和中,即使是访问过的单元格)。
输入格式
第一行包含两个整数 $N$ 和 $K$,分别表示矩阵的维度和兔子的跳跃次数($1\leq N\leq 10^5$,$1\leq K\leq 3\times 10^5$)。
第二行给出由 $K$ 个字符组成的序列,字符为 'U'、'D'、'L' 和 'R',分别代表兔子的跳跃方向。保证该跳跃序列不会使兔子跳出矩阵。
输出格式
输出一个整数,表示兔子访问过的所有单元格上数字的总和。
**注意:** 结果可能会超过 32 位整数的表示范围。
**本翻译由 AI 自动生成**