用小球打数字(「教3妹学算法-每日3题(3)」盒子中小球的最大数量)
更新时间:2022-10-01 19:24:25题目:
你在一家生产小球的玩具厂工作,有 n 个小球,编号从 lowLimit 开始,到 highLimit 结束(包括 lowLimit 和 highLimit ,即 n == highLimit - lowLimit 1)。另有无限数量的盒子,编号从 1 到 infinity 。
你的工作是将每个小球放入盒子中,其中盒子的编号应当等于小球编号上每位数字的和。例如,编号 321 的小球应当放入编号 3 2 1 = 6 的盒子,而编号 10 的小球应当放入编号 1 0 = 1 的盒子。
给你两个整数 lowLimit 和 highLimit ,返回放有最多小球的盒子中的小球数量。如果有多个盒子都满足放有最多小球,只需返回其中任一盒子的小球数量。
示例 1:
输入:lowLimit = 1, highLimit = 10
输出:2
解释:
盒子编号:1 2 3 4 5 6 7 8 9 10 11 ...
小球数量:2 1 1 1 1 1 1 1 1 0 0 ...
编号 1 的盒子放有最多小球,小球数量为 2 。
示例 2:
输入:lowLimit = 5, highLimit = 15
输出:2
解释:
盒子编号:1 2 3 4 5 6 7 8 9 10 11 ...
小球数量:1 1 1 1 2 2 1 1 1 0 0 ...
编号 5 和 6 的盒子放有最多小球,每个盒子中的小球数量都是 2 。
示例 3:
输入:lowLimit = 19, highLimit = 28
输出:2
解释:
盒子编号:1 2 3 4 5 6 7 8 9 10 11 12 ...
小球数量:0 1 1 1 1 1 1 1 1 2 0 0 ...
编号 10 的盒子放有最多小球,小球数量为 2 。
提示:
1 <= lowLimit <= highLimit <= 10^5
思路:
重点在求位数和,取余10, 除以10;
java代码:
class Solution {
public int countBalls(int lowLimit, int highLimit) {
Map<Integer, Integer> map = new HashMap<>();
for (int i = lowLimit; i <= highLimit; i ) {
int sum = sum(i);
map.put(sum, map.getOrDefault(sum, 0) 1);
}
int max =0;
for(Map.Entry<Integer, Integer> entry:map.entrySet()) {
max = Math.max(entry.getValue(), max);
}
return max;
}
private int sum(int i) {
int sum = 0;
while (i != 0) {
sum = i % 10;
i /= 10;
}
return sum;
}
}
相关推荐
-
cba加时赛为什么用小个阵容(为什么杜锋总是让张镇麟打不熟悉的位置?“仇”从何来)
查看详情
-
他已不用证明(一首难念的丁,唱出丁俊晖戎马一生的沉浮,伟大不用小皇冠证明)
查看详情
-
如何辨别(八个实用小妙招,辨别真假,一招就能帮你解决真假)
查看详情
-
网球肘用小针刀治疗效果好吗(得了网球肘,打封闭好使吗?)
查看详情
-
nba球员为什么用小哑铃(周琦举哑铃,姚明举哑铃,奥尼尔举哑铃,没有对比就没有尴尬)
查看详情
-
世界杯的音乐为什么用小号(用一张兼收并蓄的音乐清单,让你听听CHANEL与音乐的故事)
查看详情
-
足球连场赢一半算法(1分钟学会预测世界杯输赢——教你用小六壬预测足球胜负)
查看详情
-
为什么cba篮球席很远(CBA再引争议,替补席用小暖扇御寒,第二阶段为何不在南方举办?)
查看详情
- 最新资讯
-
- 2023-05-15 test
- 2022-11-15 2夺欧洲杯4获世界杯(俱乐部的成就引领国家队的辉煌——世界杯巡礼之西班牙篇)
- 2022-11-15 谁能介绍韩国国国家足球队(韩国足球,在欧洲是什么水平?)
- 2022-11-15 篮球世界杯中国最多几强(支持杜峰下课,但是中国男篮从世界第八沦为亚洲第八这个锅不该背)
- 2022-11-15 奥运会分为田径和什么(数说奥运:少年强则国强)
- 2022-11-15 中国男足VS沙特男足动漫图片(这部足球动画让日本队踢进了世界杯)
- 2022-11-15 世界杯进球最多的赛事(历届世界杯决赛里面11大进球最多的比赛)
- 2022-11-15 nba2k20手游在哪个平台(《NBA 2K20》试玩版报告:更加平衡的篮球体验)
- 2022-11-15 萨拉赫升至第三位(萨拉赫离封王就差一个冠军了,创下4大里程碑纪录 梅罗之后第三人)
- 2022-11-15 世界杯阿根廷队服(世界杯开赛前9天,阿根廷做出重要决定!恭喜梅西,封神希望大增)
- 推荐攻略
-
-
乌克兰总统身亡(乌总统泽连斯基解除乌总检察长及国家安全局局长职务)
-
足球比赛每个半场多少分钟(足球比赛每半场几分钟)
-
2021中超今天哪里转播(今晚!中超2场对决,CCTV5 直播申花PK武汉,腾讯体育亚泰vs天津)
-
2022梅西坠机身亡事件结果(足坛变天!巴萨无缘榜首的2年:梅西告别,老马去世,2-8惨案)
-
2021全运会篮球直播赛程辽宁(4月22日央视直播:CBA总决赛;赵心童vs马奎尔,塞尔比vs颜丙涛)
-
中国最强导弹(世界洲际导弹前10排名,中国东风导弹领先美国,第一名堪称导弹王)
-
2021篮球比赛在哪里看(CCTV5直播NBA 辽篮争夺CBA总决赛冠军点 颜丙涛出战斯诺克世锦赛)
-
东航结果不敢公布了(民航局再次回应东航MU5735事故调查!查明原因有多难,多久公布?)
-