华为OD机试题想问一下
对于一个连续正整数组成的序列,可以将其拼接成一个字符串,再将字符串里的部分字符打乱顺序。如序列8 9 10 11 12,拼接成的字符串为89101112,打乱一部分字符后得到90811211。注意打乱后原来的正整数可能被拆开,比如在90811211中,原来的正整数10就被拆成了0和1。
现给定一个按如上规则得到的打乱了字符的字符串,请将其还原成连续正整数序列,并输出序列中最小的数字。
输入:打乱后的字符串 原序列数字个数
输出:原序列最小值
注意:原序列数字不超过1000
这题除了枚举前1000大部分数字,还有别的方法吗
#华为OD引流:offer,面试,刷题#
现给定一个按如上规则得到的打乱了字符的字符串,请将其还原成连续正整数序列,并输出序列中最小的数字。
输入:打乱后的字符串 原序列数字个数
输出:原序列最小值
注意:原序列数字不超过1000
这题除了枚举前1000大部分数字,还有别的方法吗
全部评论
开一个大小为10的数组记录各数字的出现次数,用长度为原序列数字个数的滑动窗口从1开始扫描就行了
相关推荐
点赞 评论 收藏
分享
11-07 10:05
石家庄市第一职业中专学校 后端工程师 StephenZ_:我9月份找的第一段实习也是遇到这种骗子公司了,问他后端有多少人和我说7个正职,进去一看只有一个后端剩下的都是产品前端算法(没错甚至还有算法)。还是某制造业中大厂,我离职的时候还阴阳怪气我
点赞 评论 收藏
分享


