#CF2052G. 几何对称

几何对称

G. 几何对称

单次测试时间限制:3 秒 单次测试内存限制:1024 兆字节

彼得的弟弟伊万喜欢和一只乌龟玩具玩耍。这只特殊的乌龟玩具在平面上活动,能执行三条指令:

  1. 逆时针旋转 aa 度。
  2. 沿当前朝向绘制长度为 dd 个单位的线段,同时喷出墨水。平面上的任意一段区域最多只会被墨水覆盖一次
  3. 沿当前朝向移动 dd 个单位,不绘制任何图案。

伊万刚学会使用指南针,因此他只会让乌龟朝向八个基本或正交方向(旋转指令中的角度 aa 始终能被 4545 整除)。同时,他至少会执行一次绘制指令。

彼得记录了伊万给乌龟的所有指令,他觉得乌龟画出的图案非常可爱。现在彼得想知道最小的正角度 bb,满足: 将乌龟移动到他选定的任意点,旋转 bb 度,然后按原顺序执行所有指令,最终画出的图案和原本的图案完全相同。你能帮助彼得吗?

注意:如果两个图案在平面上被墨水覆盖的点集完全相同,则认为这两个图案是一样的。

输入格式

第一行输入一个整数 nn1n500001 \le n \le 50000),表示伊万给出的指令数量。

接下来 nn 行,每行包含一条指令,格式为以下三种之一:

  • rotate a45a36045 \le a \le 360),其中 aa 能被 4545 整除;
  • draw d1d1091 \le d \le 10^9);
  • move d1d1091 \le d \le 10^9)。

保证至少有一条、最多有 2000 条绘制指令,且平面上任意区域不会被墨水覆盖超过一次。

输出格式

输出一个整数,即问题的答案。题目保证答案一定存在。

输入输出样例

样例输入 1

1
draw 10

样例输出 1

180

样例输入 2

7
draw 1
rotate 90
draw 1
rotate 90
draw 1
rotate 90
draw 1

样例输出 2

90

样例输入 3

3
draw 1
move 1
draw 2

样例输出 3

360