AT_utpc2022_l Small RPS Tournament
题目描述
有 $N$ 个人参加了石头剪子布大会。参与者分别被称为人 $1$、人 $2$、……、人 $N$。每个参与者都有自己擅长的手势,并且每场比赛他们只会出自己擅长的那一手。
参与者的擅长手势由一个长度为 $N$ 的字符串 $S$ 表示,其中由 `R`、`P`、`S` 组成,第 $i$ 个字符 $S_i$ 表示人 $i$ 擅长的手势。其中 `R` 表示石头,`P` 表示布,`S` 表示剪刀。
大会的过程如下:首先按人 $1$、人 $2$、……、人 $N$ 的顺序横向排成一列,然后进行 $0$ 次或多次“比赛”。一场“比赛”按如下方式进行:
- 从队列中选择一对相邻、且出手不会打成平局的两个人,随机让他们进行石头剪子布。失败的一方将被移出队列。
当无法再进行比赛时,队列中剩下的所有人都成为冠军。特别地,如果只剩下一个人,则这个人将成为唯一的冠军。
请你输出有可能成为唯一冠军的人数。
石头剪子布规则如下:
- 一方出石头,另一方出剪刀,石头获胜,剪刀失败。
- 一方出剪刀,另一方出布,剪刀获胜,布失败。
- 一方出布,另一方出石头,布获胜,石头失败。
- 双方出相同的手势,打成平局。
输入格式
输入从标准输入读取,格式如下:
> $N$ $S$
输出格式
请输出一个整数,表示有可能成为唯一冠军的人数。
说明/提示
## 部分分数
本题设有多组部分得分:
- 若能通过 $2 \leq N \leq 50$ 的数据集,则可获得 $10$ 分。
- 若能通过 $2 \leq N \leq 3000$ 的数据集,则可获得 $50$ 分。
## 样例解释 1
例如,可以按如下方式进行比赛,人 $3$ 可以成为唯一冠军:
- 人 $1$ 与人 $2$ 比赛,人 $1$ 获胜;
- 人 $1$ 与人 $3$ 比赛,人 $3$ 获胜;
- 人 $3$ 与人 $4$ 比赛,人 $3$ 获胜。
此外,人 $1$ 也有可能成为唯一冠军。另一方面,人 $2$ 和人 $4$ 不可能成为唯一冠军。
## 样例解释 2
最终一定会剩下至少 $2$ 个人。
# 数据范围
- $N$ 为整数
- $2 \leq N \leq 3 \times 10^5$
- $S$ 是由 `R`、`P`、`S` 组成的长度为 $N$ 的字符串。
由 ChatGPT 5 翻译