CF2204A.Passing the Ball

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

Passing the Ball

题目描述

在一次体育课上,有 nn 个学生排成一行,从左到右编号为 11nn

对于每个学生,已知如果他们接到球,就会把球传给左边的邻居或右边的邻居。这一规则由长度为 nn 的字符串 ss 指定。字符串的每个字符都是 L 或 R,当 sis_i 为 L 时,第 ii 个学生会把球传给第 (i1)(i-1) 个学生;当 sis_i 为 R 时,第 ii 个学生会把球传给第 (i+1)(i+1) 个学生。第一个学生总是把球传给第二个学生,最后一个学生总是把球传给倒数第二个学生(也就是说,字符串 ss 首字符为 R,末字符为 L)。

请考虑如下过程:

  • 首先,第一个学生接到球;
  • 接下来,恰好进行 nn 次操作:当前持球的学生按照上述规则把球传给指定的邻居。

你的任务是求出在上述过程中,有多少个学生至少接到过一次球。

输入格式

第一行包含一个整数 tt1t100001 \le t \le 10000)——测试用例的数量。

每个测试用例包括两行:

  • 第一行包含一个整数 nn2n502 \le n \le 50)——学生的数量;
  • 第二行包含 ss ——一个长度为 nn 仅包含 L 和 R 的字符串。序列的第一个字符为 R,最后一个字符为 L。

输出格式

对于每个测试用例,输出一个整数——在上述过程中至少接到一次球的学生人数。

说明/提示

在第一个样例中,第 11 个学生接到球后传给第 22 个学生,然后第 22 个学生又把球传回给第 11 个学生,如此往复,只有第 11 个和第 22 个学生接到过球。

在第二个样例中,第 11 个学生将球传给第 22 个学生,第 22 个传给第 33 个,第 33 个传给第 44 个,第 44 个传给第 55 个,第 55 个传给第 66 个,第 66 个又传回给第 55 个。每个学生都至少接到了一次球。

由 ChatGPT 5 翻译

样例

3
4
RLRL
6
RRRRRL
9
RRLRRRRRL
2
6
3

在线编程 IDE

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