给出一个字符串 A, 表示一个 n 位正整数, 删除其中 k 位数字, 使得剩余的数字仍然按照原来的顺序排列产生一个新的正整数。
找到删除 k 个数字之后的最小正整数。
N <= 240, k <= N
样例
样例 1:
输入: A = "178542", k = 4
输出:"12"
样例 2:
输入: A = "568431", k = 3
输出:"431"
输入测试数据 (每行一个参数)如何理解测试数据?
class Solution:
"""
@param A: A positive integer which has N digits, A is a string
@param k: Remove k digits
@return: A string"""
def DeleteDigits(self, A, k):
while k > 0:
for i in range(len(A)-1):
if A[i] > A[i+1]:
A = A.replace(A[i],'',1)
breakelse:
A = A[:-1]
k -= 1
##如果最后存在00023的话,则需要把前面的0去除,如果是只是0的话,则需要保留
while A[0] == '0' and len(A) > 1:
A = A.replace(A[0],'',1)
return A