在一行上输入两个整数
,分别表示字符串长度和操作次数;
在一行上输入一个长度为
,仅由大小写英文字母组成的字符串
;
接下来
行,每行输入三个元素:整数
和两个字符
,满足:
若
,则
为小写字母,且
;
若
,则
为大写字母,且
。
输出执行完所有操作后得到的最终字符串。
3 1 abc 1 a c
ABC
在此样例中,初始字符串
,将区间
的小写字母统一转换成大写,得到
。
6 2 aAbBcC 1 a b 2 B C
AAbbcc
在此样例中,
第一次操作将字符串中所有满足字母表区间
所有小写字母的变为大写字母,得到
;
第二次操作将字符串中所有满足字母表区间
所有大写字母的变为小写字母,最终得到
。
import sys
def transfer_string(s, line):
list_s = list(s)
print(list_s)
if int(line[0]) == 1 and line[1] < line[2]:
for i in range(len(list_s)):
if ord(s[i]) in range(ord(line[1]), ord(line[2])+1):
list_s[i] = list_s[i].upper()
elif int(line[0]) == 2 and line[1] < line[2]:
for i in range(len(list_s)):
if ord(s[i]) in range(ord(line[1]), ord(line[2])+1):
list_s[i] = list_s[i].lower()
return "".join(list_s)
if __name__ == "__main__":
n, m = map(int, input("输入n, m:").split())
s = input("输入一个字符串:")
s1 = s
for _ in range(m):
line = input("请输入转换格式: ").split()
result = transfer_string(transfer_string(s1, line), line)
print(result)