AT_nomura2020_b Postdocs
题目描述
对于仅由大写字母 `P` 和 `D` 组成的字符串 $S$,$S$ 作为连续子串所包含的 `D` 和 `PD` 的个数之和,称为 $S$ 的“博士・PD 指数”。例如,当 $S = $ `PPDDP` 时,$S$ 作为连续子串包含 $2$ 个 `D` 和 $1$ 个 `PD`,因此 $S$ 的博士・PD 指数为 $3$。
现在给定一个由 `P`、`D`、`?` 组成的字符串 $T$。
请你将 $T$ 中的每一个 `?` 替换为 `P` 或 `D`,使得替换后得到的字符串的博士・PD 指数最大。请输出任意一个满足条件的字符串。
输入格式
输入为一行,包含一个字符串 $T$。
输出格式
请输出将 $T$ 中的每一个 `?` 替换为 `P` 或 `D` 后,博士・PD 指数最大的字符串。如果有多个满足条件的字符串,输出任意一个即可。
说明/提示
## 限制
- $1 \leq |T| \leq 2 \times 10^5$
- $T$ 仅包含 `P`、`D`、`?`。
## 样例解释 1
该字符串作为连续子串包含 $3$ 个 `D` 和 $3$ 个 `PD`,因此该字符串的博士・PD 指数为 $6$。这是将 $T$ 中的每个 `?` 替换为 `P` 或 `D` 后,博士・PD 指数的最大值。
由 ChatGPT 4.1 翻译