AT_abc433_f.[ABC433F] 1122 Subsequence 2

提高+/省选-

通过率:0%

AC君温馨提醒

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

题目描述

给定一个由数字组成的字符串 SS。

一个字符串 TT 被称为 1122-字符串,当且仅当它满足以下所有条件(定义同问题 C):

  • TT 是一个非空的数字字符串;
  • ∣T∣|T| 是偶数,其中 ∣T∣|T| 表示字符串 TT 的长度;
  • TT 的第 11 到第 ∣T∣2\frac{|T|}2 个字符都是相同的数字;
  • TT 的第 (∣T∣2+1)(\frac{|T|}2+1) 到第 ∣T∣|T| 个字符都是相同的数字;
  • 将 TT 的第 11 个字符代表的数字加 11,恰好等于 TT 的第 ∣T∣|T| 个字符代表的数字。

例如,1122、01 和 444555 都是 1122-字符串,而 1222 和 90 不是 1122-字符串。

请计算 SS 的**(不一定连续的)子序列**中有多少个是 1122-字符串。由于答案可能很大,请对 998244353998244353 取模。

两个子序列只要抽取的位置不同,即使内容相同,也要分别计数。

输入格式

输入由标准输入给出,格式如下:

SS

输出格式

输出 SS 中所有 1122-字符串子序列的个数,对 998244353998244353 取模。

输入输出样例

  • 输入#1

    1122

    输出#1

    5
  • 输入#2

    2025

    输出#2

    0
  • 输入#3

    0777468889971

    输出#3

    30

说明/提示

样例解释 1

以下五个子序列满足条件:

  • 从 SS 的第 11 和第 33 个字符抽取得到的 12
  • 从 SS 的第 11 和第 44 个字符抽取得到的 12
  • 从 SS 的第 22 和第 33 个字符抽取得到的 12
  • 从 SS 的第 22 和第 44 个字符抽取得到的 12
  • 从 SS 的第 11 到第 44 个字符依次抽取得到的 1122

因此输出 55。

注意:只要抽取位置不同,即使形成的子序列字符串相同,也分别计数。

样例解释 2

可能没有任何子序列是 1122-字符串。

数据范围

  • SS 是一个长度在 11 到 10610^6 之间的数字字符串。

由 ChatGPT 5 翻译

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

首页