AT_s8pc_2_e.部分文字列

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

$ square1001 「「 E869120 $ 的所有字符都不相同,但 $ square1001 $ 有 $ 2 $ 个字符是相同的!」

$ E869120 $「也就是说,子串的种类数也会不同吧……」

$ square1001 $「比如在 $ 1001 $ 这个字符串中,第 $ 2 $ 个字符的 $ '0' $ 和第 $ 3 $ 个字符的 $ '0' $ 是重复的!($ '1' $ 也是如此)」

因此,这次请枚举字符串 $ S $ 的所有子串,并将重复的字符串只计数一次,求这些子串的总字符数。

例如,对于 $ "aba" ,可以得到 { "a","b","a","ab","ba","aba" $} 共 $ 6 $ 种,但 $ "a" $ 是重复的。

作为子串的种类有 $ 5 $ 种。

{$ "a","b","ab","ba","aba" $} 的总字符数为 $ 1+1+2+2+3=9 $。

注意:答案可能无法用 $ 32 $ 位整数型存储。

  • $ a,\ b,\ c,\ ab,\ bc,\ abc $ 是 $ abc $ 的子串,总共 $ 10 $ 个字符。

  • 请注意存在重复的情况。

输入格式

输入以如下格式从标准输入给出。

$ S $

  • 第 $ 1 $ 行给出要查询的字符串 $ S $。

输出格式

请按如下格式输出到标准输出。

  • 输出作为子串(重复只计一次)考虑时的所有子串的总字符数。
  • 但请注意,答案可能无法用 $ 32 $ 位整数型存储。

输入输出样例

  • 输入#1

    abc

    输出#1

    10
  • 输入#2

    aaqqz

    输出#2

    33
  • 输入#3

    atcoder

    输出#3

    84

说明/提示

约束条件

  • $ 1 \leq |S| \leq 100,!000 $
  • 所包含的字符仅为小写英文字母

子任务

子任务 $ 1 $ [ $ 15 $ 分 ]

  • 满足 $ 1 \leq |S| \leq 100 $。

子任务 $ 2 $ [ $ 35 $ 分 ]

  • 满足 $ 1 \leq |S| \leq 2,!000 $。

子任务 $ 3 $ [ $ 50 $ 分 ]

  • 无额外约束。

由 ChatGPT 4.1 翻译

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

首页