【贪心】【待写】Leetcode 402Remove K Digitsw

题意:给定一个非负整数n, 现在最多可以移除k位, 使得剩下的数字尽可能小并输出,前导零最终要舍去,全部移除则输出0

我也很无语自己这么无耻地写了一个待写。但的确觉得这道题很好,告诫自己一定要写一次这个代码。

分析,就是贪心,遇到降的序列,就把那个大的去掉。如1243,去掉4,若到最后就去掉最后一个。

证明:类似数学归纳吧。若相邻两个,选择一个不去掉,那一定不去小的,因为两个数无论去掉哪一个,剩下那一个占的是同一位,那么留下小的可以使数更小,从前两位开始,若出现前一位比后一位大,那这个数一定是备选项了。然后若出现多个备选项,去越高位数变得越小。

得证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值