PTA網(wǎng)站是一個(gè)編程練習(xí)網(wǎng)站鹉梨。今天的天梯賽練習(xí)題如下讳癌。
L1-058 6翻了 (15 分)
我的解決辦法是如下:
sen=input()
rep=[]
count=0
for i in range(len(sen)):
if sen[i]=='6':
end=i
count+=1
flag=1
elif sen[i]!='6':
count=0
flag=0
if count>3 and (i==len(sen)-1 or sen[i+1]!='6'):
if count<10:
rep.append([end+1-count,end,'0'])
elif count>9:
rep.append([end+1-count,end,'1'])
sen1=sen
for j in rep[-1::-1]:
if j[2]=='0':
sen1=sen1.replace(sen[j[0]:j[1]+1],'9')
elif j[2]=='1':
sen1=sen1.replace(sen[j[0]:j[1]+1],'27')
print(sen1)
代碼語(yǔ)言是python。
這個(gè)網(wǎng)站的一個(gè)好處是可以使用多種編程語(yǔ)言來(lái)解題存皂。
image.png
我的代碼解釋
第一個(gè)循環(huán)獲取題目要求的滿足條件的“6”的字符子串的位置起始下標(biāo)晌坤。
然后再將原始字符串中的需要替換的子串替換成要求的字符串。
替換的時(shí)候旦袋,這里用了一個(gè)小竅門(mén)骤菠,先將下標(biāo)列表反轉(zhuǎn),替換的時(shí)候從后往前替換疤孕。因?yàn)槿绻麖那巴筇鎿Q的話商乎,第一次替換后,后面的字符下標(biāo)就都變了祭阀。
編程就是一種智力活動(dòng)鹉戚,一種思考過(guò)程。就和打牌专控,打游戲一樣讓人上癮抹凳。