CF626A.Robot Sequence

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Robot Sequence

题目描述

机器人 Calvin 处在一个无限的矩形网格上。Calvin 的源代码包含一个长度为 nn 的指令序列,每条指令要么是 'U'、'R'、'D' 或 'L',分别表示向上、向右、向下或向左移动一格。有多少种方法可以让 Calvin 执行一个非空的连续子串指令后,回到他开始的位置?如果两个子串的起始或结束下标不同,则视为不同的子串。

输入格式

输入的第一行包含一个正整数 nn1n2001 \leq n \leq 200),表示指令的数量。

第二行包含 nn 个字符,每个字符为 'U'、'R'、'D' 或 'L',表示 Calvin 的源代码。

输出格式

输出一个整数,表示 Calvin 能够执行并回到起始位置的连续子串数量。

说明/提示

在第一个样例中,整个源代码就满足要求,同时第 2 和第 3 个字符组成的 "RL" 子串也满足条件。

注意,在第三个样例中,子串 "LR" 出现了三次,因此总结果要计数三次。

由 ChatGPT 5 翻译

样例

6
URLLDR
2
4
DLUU
0
7
RLRLRLR
12

在线编程 IDE

建议全屏模式获得最佳体验