700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Python(贪心算法)问题 D: 删数问题_输入一个高精度的正整数N 去掉其中任意S个数

Python(贪心算法)问题 D: 删数问题_输入一个高精度的正整数N 去掉其中任意S个数

时间:2022-10-12 11:31:13

相关推荐

Python(贪心算法)问题 D: 删数问题_输入一个高精度的正整数N 去掉其中任意S个数

问题 D: 删数问题

题目描述

输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序组成一个新的正整数。编程对给定的N和S,寻找一种方案使得剩下的数字组成的新数最小。输出新的正整数。(N不超过240位)输入数据均不需判错。

输入

ns

输出

最后剩下的最小数。

样例输入

1754384

样例输出

13

解答(贪心算法):

n = list(input())# 将每个数字存放于列表中s = int(input())print(n)li = []i = 0while i < s:a = 0# 寻找极大值while a < len(n) - 1 and n[a] <= n[a + 1]:# while结束条件是仅存1个数或者前数大于后数a += 1n.pop(a)# 删除列表中对应的数i += 1print(int(''.join(n)))# 将列表中的各个元素拼接起来并且转化为int类型

答案不唯一,必定有更加优化的解法欢迎分享

Python(贪心算法)问题 D: 删数问题_输入一个高精度的正整数N 去掉其中任意S个数字后剩下的数字按原左右次序组成一个新的正整数。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。