1. 程式人生 > >牛客網-保留最大的數

牛客網-保留最大的數

題目描述
給定一個十進位制的正整數number,選擇從裡面去掉一部分數字,希望保留下來的數字組成的正整數最大。

輸入為兩行內容,第一行是正整數number,1 ≤ length(number) ≤ 50000。第二行是希望去掉的數字數量cnt 1 ≤ cnt < length(number)。

輸入:325 1
輸出:35

nums = list(input())
cnt = int(input())
n, j, i= len(nums), cnt, 0
while j > 0 and i < n-1:
    if nums[i]>= nums[i+1]:
i += 1 else: nums.pop(i) j -= 1 n -= 1 i = i-1 if i > 0 else 0 if j > 0: nums = nums[:-j] print(''.join(nums)) # 複雜度O(n),從左至右,刪除小於下一位的數,最後不夠刪除結尾數

參考連結 https://www.nowcoder.com/profile/6416438/codeBookDetail?submissionId=31625556