CF2052G.Geometric Balance

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Peter 的弟弟 Ivan 爱玩一个特别的乌龟玩具。这只乌龟生活在一个平面上,可以执行以下三种指令:

  • 左转 aa 度。
  • 朝当前方向移动 dd 个单位距离并在路径上留下墨迹,注意同一条轨迹上的墨迹不会重复覆盖。
  • 朝当前方向移动 dd 个单位距离但不留下痕迹。

Ivan 刚刚学会了使用指南针,所以他只会把乌龟朝八个主要方向之一旋转(旋转角度 aa 总是 45 的倍数)。此外,他一定执行过至少一次绘制命令。

Peter 记录了 Ivan 对乌龟的所有指令。他觉得乌龟画出的图案非常可爱。现在,Peter 想知道一个最小的正角度 bb,以便他能进行以下操作:将乌龟移到他选择的一点,旋转 bb 度,然后按照原来的顺序执行所有指令。这样操作后,画出的图案和初始图案相同。你能帮助 Peter 找出这个角度吗?

请注意,如果两个图案的墨迹覆盖的位置相同,则认为这两个图案相同。

输入格式

输入的第一行是一个整数 n  (1≤n≤50000)n\;(1 \le n \le 50000),表示 Ivan 下达的指令总数。

接下来的 nn 行是具体的指令。每一条指令是以下几种之一:

  • "rotate aa"(45≤a≤36045 \le a \le 360),其中 aa 是 45 的倍数;
  • "draw dd"(1≤d≤1091 \le d \le 10^9);
  • "move dd"(1≤d≤1091 \le d \le 10^9)。

至少有一条指令是绘制命令,最多有 2000 条指令是绘制命令。保证平面上的任何一部分不会被墨迹重复覆盖。

输出格式

输出一个数字,表示问题的答案。可以确定答案总是存在。

本翻译由 AI 自动生成

输入输出样例

  • 输入#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

输入解题思路,AI测评打分。不知道怎么写?

首页