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 翻译