CF1202C.You Are Given a WASD-string...

提高+/省选-

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

You have a string ss — a sequence of commands for your toy robot. The robot is placed in some cell of a rectangular grid. He can perform four commands:

  • 'W' — move one cell up;
  • 'S' — move one cell down;
  • 'A' — move one cell left;
  • 'D' — move one cell right.

Let Grid(s)Grid(s) be the grid of minimum possible area such that there is a position in the grid where you can place the robot in such a way that it will not fall from the grid while running the sequence of commands ss. For example, if s=DSAWWAWs = \text{DSAWWAW} then Grid(s)Grid(s) is the 4×34 \times 3 grid:

  1. you can place the robot in the cell (3,2)(3, 2);
  2. the robot performs the command 'D' and moves to (3,3)(3, 3);
  3. the robot performs the command 'S' and moves to (4,3)(4, 3);
  4. the robot performs the command 'A' and moves to (4,2)(4, 2);
  5. the robot performs the command 'W' and moves to (3,2)(3, 2);
  6. the robot performs the command 'W' and moves to (2,2)(2, 2);
  7. the robot performs the command 'A' and moves to (2,1)(2, 1);
  8. the robot performs the command 'W' and moves to (1,1)(1, 1).

You have 44 extra letters: one 'W', one 'A', one 'S', one 'D'. You'd like to insert at most one of these letters in any position of sequence ss to minimize the area of Grid(s)Grid(s).

What is the minimum area of Grid(s)Grid(s) you can achieve?

你有一个字符串 ss —— 这是一系列控制你的玩具机器人的指令。机器人被放置在某个矩形网格的某个格子中。它可以执行以下四种指令:

  • 'W' —— 向上移动一格;
  • 'S' —— 向下移动一格;
  • 'A' —— 向左移动一格;
  • 'D' —— 向右移动一格。

定义 Grid(s)Grid(s) 为满足如下条件的、面积最小的矩形网格:存在该网格中的某个起始位置,使得机器人从该位置出发,依次执行指令序列 ss 的全过程均不会移出网格边界。例如,若 s=DSAWWAWs = \text{DSAWWAW},则 Grid(s)Grid(s) 是一个 4×34 \times 3 的网格:

  1. 可将机器人置于格子 (3,2)(3, 2)(行号从上到下编号为 1,2,…1,2,\dots,列号从左到右编号为 1,2,…1,2,\dots);
  2. 机器人执行指令 'D',移动至 (3,3)(3, 3);
  3. 机器人执行指令 'S',移动至 (4,3)(4, 3);
  4. 机器人执行指令 'A',移动至 (4,2)(4, 2);
  5. 机器人执行指令 'W',移动至 (3,2)(3, 2);
  6. 机器人执行指令 'W',移动至 (2,2)(2, 2);
  7. 机器人执行指令 'A',移动至 (2,1)(2, 1);
  8. 机器人执行指令 'W',移动至 (1,1)(1, 1)。

你额外拥有 4 个字母:一个 'W'、一个 'A'、一个 'S'、一个 'D'。你最多可在序列 ss 的任意一个位置插入其中至多一个字母(即:可选择插入一个字母,也可选择不插入),以使 Grid(s)Grid(s) 的面积最小化。

你能达到的 Grid(s)Grid(s) 的最小面积是多少?

输入格式

The first line contains one integer TT (1≤T≤10001 \le T \le 1000) — the number of queries.

Next TT lines contain queries: one per line. This line contains single string ss (1≤∣s∣≤2⋅1051 \le |s| \le 2 \cdot 10^5, si∈W,A,S,Ds_i \in {\text{W}, \text{A}, \text{S}, \text{D}}) — the sequence of commands.

It's guaranteed that the total length of ss over all queries doesn't exceed 2⋅1052 \cdot 10^5.

第一行包含一个整数 TT(1≤T≤10001 \le T \le 1000)—— 表示查询次数。

接下来的 TT 行每行包含一个查询:每行一个字符串 ss(1≤∣s∣≤2⋅1051 \le |s| \le 2 \cdot 10^5,且 si∈{W,A,S,D}s_i \in \{\text{W}, \text{A}, \text{S}, \text{D}\})—— 表示指令序列。

保证所有查询中字符串 ss 的总长度不超过 2⋅1052 \cdot 10^5。

输出格式

Print TT integers: one per query. For each query print the minimum area of Grid(s)Grid(s) you can achieve.

输出 TT 个整数:每个查询对应一个整数。对于每个查询,输出所能达到的 Grid(s)Grid(s) 的最小面积。

输入输出样例

  • 输入#1

    3
    DSAWWAW
    D
    WA

    输出#1

    8
    2
    4

说明/提示

In the first query you have to get string DSAWWD‾AW\text{DSAWW}\underline{D}\text{AW}.

In second and third queries you can not decrease the area of Grid(s)Grid(s).

在第一次查询中,你需要得到字符串 DSAWWD‾AW\text{DSAWW}\underline{D}\text{AW}。

在第二次和第三次查询中,你不能减小 Grid(s)Grid(s) 的面积。

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

首页