A. 机器人巡逻

    传统题 文件IO:t1 1000ms 256MiB

机器人巡逻

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

T1. 机器人巡逻

属性
内存限制 256 MiB
时间限制 1000 ms

题目描述

在一个无限大的二维网格平面上,有一个巡逻机器人。机器人初始位置在坐标原点 (0,0)(0, 0),面朝东方xx 轴正方向)。

机器人接收一串指令字符串 SS,每个字符代表一条指令:

  • F:向当前面朝的方向前进 11 个单位距离。
  • L:向左(逆时针)旋转 9090^\circ
  • R:向右(顺时针)旋转 9090^\circ

方向定义

方向 面朝 坐标变化
东(East) xx 轴正方向 (+1,0)(+1, 0)
北(North) yy 轴正方向 (0,+1)(0, +1)
西(West) xx 轴负方向 (1,0)(-1, 0)
南(South) yy 轴负方向 (0,1)(0, -1)

初始时机器人面朝东方。

请你依次执行指令串 SS 中的每条指令,输出两个整数:

  1. 机器人最终到达的位置 (x,y)(x, y)
  2. 机器人在执行指令的整个过程中(包括初始位置 (0,0)(0,0)),离原点的曼哈顿距离的最大值。

曼哈顿距离定义:点 (x,y)(x, y) 到原点 (0,0)(0, 0) 的曼哈顿距离为 x+y|x| + |y|

输入格式

输入共一行,一个只包含大写字母 FLR 的字符串 SS

输出格式

输出共一行,三个整数 x,y,dx, y, d,分别表示最终位置的横坐标、纵坐标、以及过程中离原点的最大曼哈顿距离。

样例

样例 #1

输入样例 t1.in

F

输出样例 t1.out

1 0 1

解释:初始在 (0,0)(0,0),面朝东,曼哈顿距离 00。前进 11 步到达 (1,0)(1,0),曼哈顿距离 11。最大值 11

样例 #2

输入样例

LFF

输出样例

0 2 2

解释

步骤 指令 位置 面朝 曼哈顿距离
初始 (0,0)(0,0) 00
1 L
2 F (0,1)(0,1) 11
3 (0,2)(0,2) 22

最终位置 (0,2)(0, 2),最大曼哈顿距离 22

样例 #3

输入样例

FRFRF

输出样例

0 -1 2

解释

步骤 指令 位置 面朝 曼哈顿距离
初始 (0,0)(0,0) 00
1 F (1,0)(1,0) 11
2 R
3 F (1,1)(1,-1) 22
4 R 西
5 F (0,1)(0,-1) 11

最终位置 (0,1)(0, -1),最大曼哈顿距离 22

样例 #4

输入样例

FFFFRFFFFLFFFF

输出样例

8 -4 12

解释:走"口"字型路线。先向东走 44 步至 (4,0)(4,0),右转向南走 44 步至 (4,4)(4,-4)(最大曼哈顿距离 88),左转向东走 44 步至 (8,4)(8,-4)(最大曼哈顿距离 1212)。

数据范围与提示

对于 30%30\% 的数据,S100|S| \le 100

对于 60%60\% 的数据,S10000|S| \le 10\,000

对于 100%100\% 的数据,1S1051 \le |S| \le 10^5

24KOI 2026 体验赛 No.01

未参加
状态
已结束
规则
OI
题目
4
开始于
2026-6-20 11:30
结束于
2026-6-20 15:00
持续时间
3.5 小时
主持人
参赛人数
17