首页 > 试题广场 >

数字字符

[编程题]数字字符
  • 热度指数:3422 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
在十进制表示中,任意一个正整数都可以用字符 ’0’-‘9’ 表示出来。但是当 ’0’-‘9’ 这些字符每种字符的数量有限时,可能有些正整数就无法表示出来了。比如你有两个 ‘1’ ,一个 ‘2’ ,那么你能表示出 11,12,121 等等,但是无法表示出 10,122,200 等数。
现在你手上拥有一些字符,它们都是 ’0’-‘9’ 的字符。你可以选出其中一些字符然后将它们组合成一个数字,那么你所无法组成的最小的正整数是多少?

数据范围:字符串长度满足 ,字符串中只包含 '0'-'9' 字符。

输入描述:
第一行包含一个字符串,表示你可以使用的字符。


输出描述:
输出你所无法组成的最小正整数
示例1

输入

55

输出

1
示例2

输入

123456789

输出

10
头像 白伟仝
发表于 2020-06-27 17:21:45
从1开始暴力比较: import java.util.*; public class Main{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); Str 展开全文
头像 17c89
发表于 2024-01-18 10:30:06
import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.Map; import java.util.List; import java.util.Scan 展开全文
头像 laglangyue
发表于 2020-06-21 22:27:32
手写几个测试用例就知道了规律0123456789 ==1101123456789==220112233445566789=7700112233445566778899=10000112233445566778899==111 import java.util.Scanner; public clas 展开全文
头像 重生之我要当分子
发表于 2024-12-29 16:36:25
解题思路 完整思路: 使用 统计每个数字出现次数 将统计结果按照出现次数和数字大小排序 根据最小出现次数的数字情况分类处理: 如果最小次数为 ,需要特殊处理 如果最小次数的是 ,使用次小的数字 否则使用最小次数的数字重复 代码 c++ java python #incl 展开全文