AT_ttpc2015_c.おおおかやま

普及-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

在 okayama 国的首都 okayama,有一种字符串被称为“好字符串”,它是指在字符串 ookayama 的开头添加任意个(至少 11 个)o 字符后得到的字符串。

你的任务是编写一个程序,按照以下规则处理字符串 SS。

  • 步骤 11:如果 SS 的某个子串是好字符串,则进入步骤 22;如果不存在好字符串,则处理结束。
  • 步骤 22:在 SS 的所有好字符串子串中,选择长度最长的那个,记为 TT。如果有多个长度相同的,选择最靠左的那个。
  • 步骤 33:如果 TT 中存在子串 oo,则将最左侧的 oo 替换为 O,然后进入步骤 44;如果不存在,则回到步骤 11。
  • 步骤 44:如果 TT 中存在子串 OO,则将最左侧的 OO 替换为 o。无论是否存在,都回到步骤 33。

请输出处理结束后的 SS。至于这个处理结果的用途属于机密信息,你无需知晓。

当某个字符串 TT 是 SS 的第 ii 个字符到第 jj 个字符(1≤i≤j≤∣S∣1 \leq i \leq j \leq |S|)所组成的字符串时,称 TT 是 SS 的子串。这里 ∣S∣|S| 表示字符串 SS 的长度。

输入格式

输入从标准输入读入,格式如下:

SS

第 11 行给出需要处理的字符串 SS(1≤∣S∣≤1001 \leq |S| \leq 100)。保证 SS 仅由小写英文字母组成。

输出格式

请输出处理结束后的 SS,占一行。不要忘记换行。

输入输出样例

  • 输入#1

    ooookayama

    输出#1

    okayama
  • 输入#2

    ooookayamaoooookayama

    输出#2

    okayamaOkayama
  • 输入#3

    okayama

    输出#3

    okayama
  • 输入#4

    ookayama

    输出#4

    ookayama
  • 输入#5

    ooookayamakenooooookayamashiookayama

    输出#5

    okayamakenOokayamashiookayama

说明/提示

样例解释 1

对于字符串 ooookayama,处理过程如下:

  1. 步骤 11:SS 的子串中存在好字符串。
  2. 步骤 22:所有好字符串子串中,最长的是从第 11 个 o 开始的 ooookayama,记为 TT。
  3. 步骤 33:TT 中最左侧的 oo 被替换为 O,TT 变为 Oookayama。
  4. 步骤 44:TT 中不存在 OO。
  5. 步骤 33:TT 中最左侧的 oo 被替换为 O,TT 变为 OOkayama。
  6. 步骤 44:TT 中最左侧的 OO 被替换为 o,TT 变为 okayama。
  7. 步骤 33:TT 中不存在 oo。
  8. 步骤 11:SS 变为 okayama,其子串中不存在好字符串,处理结束。

样例解释 2

SS 的子串中可能存在多个好字符串。请注意要从最长且最靠左的那个开始处理。另外,虽然输入中不会出现大写字母,但在答案或处理中可能会出现。

样例解释 3

字符串 okayama 的子串中不存在好字符串。

样例解释 4

字符串 ookayama 的子串中不存在好字符串。因为好字符串是指在 ookayama 的开头添加至少 11 个 o 后得到的字符串,所以 ookayama 不满足条件。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页