Python程式:在任意位置新增5後查詢最大數
假設我們有一個數字n,我們需要找到透過在該數字的任意位置插入5可以得到的最大數字。
例如,如果輸入n = 834,則輸出將為8534。
為了解決這個問題,我們將遵循以下步驟:
如果n > 0,則
s := 將n轉換為字串
k := 空字串
c := False
對於s中的每個字元i,執行以下操作:
如果i < 5 且c為False,則
k := k 連線 "5" 連線 i
c := True
否則,
k := k 連線 i
返回k作為整數
否則,
k := 空字串
s := |n| 轉換為字串
c := False
對於s中的每個字元i,執行以下操作:
如果i > 5 且c為False,則
k := k 連線 "5" 連線 i
c := True
否則,
k := k 連線 i
如果c為false,則
k := k 連線 "5"
返回(-k)
示例
讓我們看下面的實現來更好地理解
def solve(n): if n > 0: s = str(n) k = "" c = False for i in s: if int(i) < 5 and c == False: k += "5" + i c = True else: k += i return int(k) else: k = "" s = str(abs(n)) c = False for i in s: if int(i) > 5 and c == False: k += "5" + i c = True else: k += i if not c: k += "5" return int("-" + k) n = 834 print(solve(n))
輸入
834
輸出
8534
廣告