iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 9
0
自我挑戰組

程式設計師大冒險系列 第 9

9/150_字串題型並不難272 - TEX Quotes

字串題型解起來比較直觀,算這個字元多寡,或是A取代為B。
思考的東西不多,通常一個字元只需要跑一遍。
不太需要思考最佳演算法,直接解就對了。


272 - TEX Quotes

解題思路

第奇數次遇到 " ,取代為 `` ;第偶數次遇到,取代為 '' 。
所以設定一個全域函數,確認遇到的次數是奇還是偶。


import sys
def inp():
    global ot #全域變數:因為題目要求以整段文章來看
    ot=1 
    sinp=sys.stdin.readline()
    while(sinp!=""):
        sinp=sinp.replace("\n","")
        re(sinp)
        #print(sinp)#測試測資是否正確讀入
        sinp=sys.stdin.readline()

測資讀取

def re(st):
    global ot
    for i in range(len(st)):#迴圈(句子長度)
        if(st[i]=="\""):#"這個是特殊字元,所以前面要加\
            if(ot==1):#是基數次遇到嗎?
                print("``",end="")#是,輸出``
            else:
                print("''",end="")#否,輸出''
            ot*=-1#變更次數(ot非1即-1)
        else:
            print(st[i],end="")#原字輸出
    print("")
        
inp()

這題比較簡單,就不貼測試過程。
感謝撥冗閱讀,有需要改進的地方,歡迎批評指教。


上一篇
8/150_第八天新的里程碑
下一篇
10/150_正在待業中
系列文
程式設計師大冒險115

尚未有邦友留言

立即登入留言