Description
屌丝WP的好基友CZ又被妖鬼给抓走了(CZ啊,CZ….怎么说你好呢….吃着锅里想着碗里),为了求出CZ,他只好去求高富帅RQ, RQ给WP出了到题目说只要你能解决这道题目,他就答应帮屌丝WP去解救好基友CZ。题目描述如下:
给你一个字符串s,长度小于1000,让你找出该字符串所包含的所有子串"cRazY" 或者"CraZy",并将找出的子串的大写字母变成小写字母,小写字母变成大写字母,然后输出该字符串。
“好基友,一被子” 你作为WP的好基友,能帮他解决这个问题吗?
Input
第1行是一个整数T,表示测试数据的个数(1<=T<=10)。接下来有T组测试数据。
每组测试数据包括包括一个字符串s
Output
输出T行,表示转换后的字符串
def findStr(str1,str2):
l1 = len(str1)
list = []
i = 0
while str2 in str1[i:].lower():
s = str1.lower().index(str2,i,l1)
list.append(s)
i = s + len(str2)
return list
if __name__ == '__main__':
n = int(input())
for i in range(0, n):
st = input()
st2 = 'crazy'
list = findStr(st,st2)
if len(list) == 0:
print(st)
else:
for j in range(0,len(list)):
st = st.replace(st[int(list[j]):int(list[j])+5],st[int(list[j]):int(list[j])+5].swapcase(),1)
print(st)
本人刚学Python,代码可能写的不是很好,目前在刷oj平台的题目,有些题目在网上找不到答案,所打算分享一下自己的代码,质量可能不是很好,但都是ac过的,关注我,不定时分析oj代码,如果各位有不会的,可以私聊我,一起研究