309971: CF1765N. Number Reduction

Memory Limit:512 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Number Reduction

题意翻译

给定一个正整数 $x$,你可以移除 $x$ 的任意一位,前提是移除后的 $x$ 不含前导 0,且仍是一个正整数。求 $k$ 次操作后 $x$ 的最小值。 一共 $ t $ ( $ 1 \le t \le 10^5 $ ) 组数据。 对于每组数据,给出 $ x $ ( $ 1 \le x < 10^{500000} $ ) 和 $ k $ ( $ 0 \le k < |x| $ )。其中 $|x|$ 表示 $x$ 的位数。 对于每组数据,输出 $k$ 次操作后 $x$ 的最小值。 对于 $100\%$ 的数据满足: $\sum_{i=1}^t|x_i| \le 5 \cdot 10^5 $ **有多测**。

题目描述

You are given a positive integer $ x $ . You can apply the following operation to the number: remove one occurrence of any digit in such a way that the resulting number does not contain any leading zeroes and is still a positive integer. For example, $ 10142 $ can be converted to $ 1142 $ , $ 1042 $ , $ 1012 $ or $ 1014 $ (note that $ 0142 $ is not a valid outcome); $ 10 $ can be converted to $ 1 $ (but not to $ 0 $ since it is not positive). Your task is to find the minimum positive integer that you can obtain from $ x $ if you can apply the aforementioned operation exactly $ k $ times.

输入输出格式

输入格式


The first line contains a single integer $ t $ ( $ 1 \le t \le 10^5 $ ) — the number of test cases. The first line of each test case contains a single integer $ x $ ( $ 1 \le x < 10^{500000} $ ). The second line contains a single integer $ k $ ( $ 0 \le k < |x| $ ), where $ |x| $ is the length of the number $ x $ . The sum of $ |x| $ over all test cases does not exceed $ 5 \cdot 10^5 $ .

输出格式


For each test case, print one integer — the minimum positive number that you can obtain from $ x $ if you can apply the operation exactly $ k $ times.

输入输出样例

输入样例 #1

5
10000
4
1337
0
987654321
6
66837494128
5
7808652
3

输出样例 #1

1
1337
321
344128
7052

Input

题意翻译

给定一个正整数 $x$,你可以移除 $x$ 的任意一位,前提是移除后的 $x$ 不含前导 0,且仍是一个正整数。求 $k$ 次操作后 $x$ 的最小值。 一共 $ t $ ( $ 1 \le t \le 10^5 $ ) 组数据。 对于每组数据,给出 $ x $ ( $ 1 \le x < 10^{500000} $ ) 和 $ k $ ( $ 0 \le k < |x| $ )。其中 $|x|$ 表示 $x$ 的位数。 对于每组数据,输出 $k$ 次操作后 $x$ 的最小值。 对于 $100\%$ 的数据满足: $\sum_{i=1}^t|x_i| \le 5 \cdot 10^5 $ **有多测**。

Output

**题目大意:**

题目要求对给定的正整数 $ x $ 进行操作,每次操作可以移除一个数字,移除后的数字不能含有前导 0,并且仍然是一个正整数。需要求出经过恰好 $ k $ 次操作后,能够得到的最小的正整数。

存在多组测试数据,每组数据包含 $ x $ 和 $ k $ 的值。对于每组数据,输出 $ k $ 次操作后得到的最小正整数。

**输入输出数据格式:**

- **输入格式:**
- 第一行包含一个整数 $ t $,表示测试数据的组数,$ t $ 的范围是 $ 1 \le t \le 10^5 $。
- 每组测试数据有两行,第一行包含一个正整数 $ x $,$ x $ 的范围是 $ 1 \le x < 10^{500000} $。
- 第二行包含一个整数 $ k $,$ k $ 的范围是 $ 0 \le k < |x| $,其中 $ |x| $ 表示 $ x $ 的位数。
- 所有测试数据的 $ x $ 的位数之和不超过 $ 5 \cdot 10^5 $。

- **输出格式:**
- 对于每组测试数据,输出经过 $ k $ 次操作后得到的最小正整数。

**输入输出样例:**

- **输入样例:**
```
5
10000
4
1337
0
987654321
6
66837494128
5
7808652
3
```
- **输出样例:**
```
1
1337
321
344128
7052
```**题目大意:** 题目要求对给定的正整数 $ x $ 进行操作,每次操作可以移除一个数字,移除后的数字不能含有前导 0,并且仍然是一个正整数。需要求出经过恰好 $ k $ 次操作后,能够得到的最小的正整数。 存在多组测试数据,每组数据包含 $ x $ 和 $ k $ 的值。对于每组数据,输出 $ k $ 次操作后得到的最小正整数。 **输入输出数据格式:** - **输入格式:** - 第一行包含一个整数 $ t $,表示测试数据的组数,$ t $ 的范围是 $ 1 \le t \le 10^5 $。 - 每组测试数据有两行,第一行包含一个正整数 $ x $,$ x $ 的范围是 $ 1 \le x < 10^{500000} $。 - 第二行包含一个整数 $ k $,$ k $ 的范围是 $ 0 \le k < |x| $,其中 $ |x| $ 表示 $ x $ 的位数。 - 所有测试数据的 $ x $ 的位数之和不超过 $ 5 \cdot 10^5 $。 - **输出格式:** - 对于每组测试数据,输出经过 $ k $ 次操作后得到的最小正整数。 **输入输出样例:** - **输入样例:** ``` 5 10000 4 1337 0 987654321 6 66837494128 5 7808652 3 ``` - **输出样例:** ``` 1 1337 321 344128 7052 ```

加入题单

算法标签: