测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A70617. 删数问题

编程题 基础

题目描述

键盘输入一个高精度的正整数 nn \le 1000 位),去掉其中任意 s 个数字后剩下的数字按原左右顺序将组成一个新的正整数。编程对给定的 nss \lt n 的位数,且数据保证 n 删除 s 个数之后不为 0 ,还是一个非 0 的整数),寻找一种方案,使得剩下的数字组成的数最小。

例如:153748 要删除 2 个数,使得剩下的数字最小,应当删除 57,得到 1348 。(注意:1087 如果要删除 1 个数,删除 1 结果是最小的,得到结果 87 )。

输入格式

第一行是一个高精度整数 n

第二行是需要删除的位数 s

输出格式

最后剩下的最小数。

输入输出样例

输入 #1
153748
2
输出 #1
1348
输入 #2
210047
2
输出 #2
47

说明/提示

## 思路

把数字当字符串,从低位到高位按位相加/减/乘,处理进位与借位。

## 步骤

1. 以字符串读入大整数。
2. 对齐低位后按位运算。
3. 去掉前导零后输出。