栈--找最小数

题目描述

给一个正整数NUM1,计算出新正整数NUM2,NUM2为NUM1中移除N位数字后的结果,需要使得NUM2的值最小。

输入描述

输入的第一行为一个字符串,字符串由0-9字符组成,记录正整数NUM1,NUM1长度小于32。

输入的第二行为需要移除的数字的个数,小于NUM1长度。

输出描述

输出一个数字字符串,记录最小值NUM2。

用例1

输入

2615371

4

输出

131

python 复制代码
NUM1=input()
N = int(input())
remain = len(NUM1)-N
stack=[]
for num in NUM1:
    while stack and stack[-1]>num and N>0:
        stack.pop()
        N-=1
    stack.append(num)
# 如果我们仍然需要移除数字,并且栈的长度超过了不需要移除的数字的数量
# 则从栈的末尾移除多余的元素(因为它们是较大的数字)
while len(stack)>remain:
    stack.pop()
while stack[0]=='0' and len(stack)!=1:
    stack.pop(0)
print(''.join(stack))
相关推荐
weixin_580614004 小时前
如何提取SQL日期中的年份_使用YEAR或EXTRACT函数
jvm·数据库·python
2301_813599554 小时前
SQL生产环境规范_数据库使用最佳实践
jvm·数据库·python
李可以量化4 小时前
QMT 量化实战:用 Python 实现线性回归通道,精准识别趋势中的支撑与压力(下)
python·qmt·量化 qmt ptrade
a9511416424 小时前
Go 中通过 channel 传递切片时的数据竞争与深拷贝解决方案
jvm·数据库·python
Dxy12393102164 小时前
Python 使用正则表达式将多个空格替换为一个空格
开发语言·python·正则表达式
qq_189807034 小时前
如何修改RAC数据库名_NID工具在集群环境下的改名步骤
jvm·数据库·python
zhangchaoxies4 小时前
如何检测SQL注入风险_利用模糊测试技术发现漏洞
jvm·数据库·python
Luca_kill5 小时前
MCP数据采集革命:从传统爬虫到智能代理的技术进化
爬虫·python·ai·数据采集·mcp·webscraping·集蜂云
zhangchaoxies5 小时前
CSS如何实现响应式弹性网格布局_配合media query修改flex-wrap属性
jvm·数据库·python
故事和你915 小时前
洛谷-数据结构1-1-线性表1
开发语言·数据结构·c++·算法·leetcode·动态规划·图论