[小米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

猜你喜欢

转载自www.cnblogs.com/ruoh3kou/p/10294439.html
今日推荐