[小米OJ] 9. 移除 K 位得到最小值

思路:

重复k次:

  1.找到并且删除第一个 num[i] > num[i+1] 的第i位数字。

  2.若删除过程中,序列变成递增序列,则直接删除最后一位。

注意除去字符串头的0

def solution(line):
    num, k = line.split(" ")
    for j in range(0, int(k)):
        flag = True
        for i in range(0, len(num)-1):
            if num[i] > num[i+1]:
                flag = False
                num = num[:i]+num[i+1:]
                break
        if flag:
            num = num[0:len(num)-1]
    while len(num)>0 and num[0] == '0':
        num = num[1:]
    if len(num) == 0:
        return 0
    return num

 

posted @ 2019-01-20 12:13  Ruohua3kou  阅读(193)  评论(0编辑  收藏  举报