#P13575. [CCPC 2024 重庆站] str(list(s))
[CCPC 2024 重庆站] str(list(s))
题目背景
本题目来自仓库 https://github.com/Disposrestfully/CCPC-CQ-2024/tree/main
题目描述
在 Python
语言中,若将一个字符串先转换为序列 list
,再转换为字符串 str
类型,可以得到一个新的字符串。以下控制台运行结果描述了这一过程。
以下我们形式化地描述从 到 的变换。为了得到 ,我们需要将 中的每个字符 替换为使用如下规则产生的长度为 的字符串 :
- 。
- 当 不是单引号
'
时, 和 均为单引号'
(ASCII 39),否则 和 均为双引号"
(ASCII 34)。 - 当 时, 为空格
' '
(ASCII 32),否则为左中括号[
(ASCII 91)。 - 当 时, 为逗号
,
(ASCII 44) ,否则为右中括号]
(ASCII 93)。
现在,输入一个由除空白字符以外的可见字符(即 ASCII 码 33 至 126 的所有字符)构成的字符串 ,设 ,对于整数 ,定义 。再输入两个整数 和 ,你需要对每个 求出 中所有下标模 为 的字符的 ASCII 码的和,字符串下标从 开始编号。若不存在下标模 为 的字符,认为答案为 。答案可能很大,你需要将答案对 取模。
输入格式
输入的第一行一个由除空白字符以外的可见字符构成的字符串 ,第二行两个整数 。
输出格式
输出一行 个整数,第 个整数表示 中下标模 为 的所有字符的 ASCII 码的和,对 取模。
abc
1 16
91 39 97 39 44 32 39 98 39 44 32 39 99 39 93 0
abc
2 7
472 420 580 408 474 439 429
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
3000 3000
输出请参考 down.zip 中的 3.ans 文件
提示
样例解释:
样例 #1 的最终字符串 即为题目描述的 Python
控制台运行过程中的 s1
。
样例 #2 的最终字符串 即为题目描述的 Python
控制台运行过程中的 s2
。
样例 #3 的字符串中包含了所有除空白字符以外的可见字符。