SP69 MOULDS - Moulds
题目描述
在某个工厂中,有一种特殊的切割设备用于生产金属铸造模具。设备上配备了一把尺寸为 1 毫米 x 1 毫米 x 30 毫米(高度)的刀片,这把刀片可以从尺寸为 250 毫米 x 250 毫米 x 30 毫米(高度)的长方体中切出模具。刀片的末端从未低于长方体底面的位置。在任何时间点,刀片的初始位置与当前位置之间的距离都不超过 1000 毫米。
这台机器使用一种特殊的命令语言,其语法结构如下:
```
::= [ ; { ; } ]
::= | |
::= ^
::= @
::= N | S | W | E
::= |
::= {}
::= - | +
::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
```
`{exp}` 表示零个或多个 `exp`。
命令 `` 会使刀片向下移动(当距离是正数时)或向上移动(当距离是负数时)。命令 `` 则会让刀片向指定的方向移动(N 表示向北,S 表示向南,W 表示向西,E 表示向东)。
### 任务
请编写一个程序,对于输入中的每个数据集,程序应当:
- 从输入中读取一个命令块。
- 计算在给定命令块的控制下,机器制作出的孔洞体积(假设在执行命令前,刀片位置位于未加工长方体的西北角上方 1 毫米处)。
- 将结果输出。
输入格式
输入的第一行是一个整数 $d$,表示数据集的数量。接下来每个数据集占据一行,是一个长度不超过 10000 个字符的命令块,符合上述语法。
输出格式
对于每个数据集,输出其对应的孔洞体积(单位为立方毫米),每个结果占据一行。
说明/提示
无
**本翻译由 AI 自动生成**