首页 > 其他分享 >1742. 盒子中小球的最大数量 ------ 简单vector使用、简单模拟

1742. 盒子中小球的最大数量 ------ 简单vector使用、简单模拟

时间:2022-11-23 10:17:05浏览次数:60  
标签:vector 盒子 int highLimit 小球 lowLimit 编号 ------ 1742

你在一家生产小球的玩具厂工作,有 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 。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/maximum-number-of-balls-in-a-box
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处

 

数组:

class Solution {
public:
    int countBalls(int lowLimit, int highLimit) {
        vector<int> res(50,0); //初始化vector
        int maxnum = 0;
        for (int i = lowLimit; i <= highLimit; ++i) {
            int count = 0;
            int temp_i = i; // 临时变量保存
            while (i) {
                count += i % 10;
                i = i / 10;
            }
            i = temp_i;
            maxnum = max (maxnum, ++res[count]);//省去count++
        }
        return maxnum;
    }
};

哈希表:

class Solution {
public:
    int countBalls(int lowLimit, int highLimit) {
        unordered_map<int, int> res; //初始化哈希表
        int maxnum = 0;
        for (int i = lowLimit; i <= highLimit; ++i) {
            int count = 0;
            int temp_i = i; // 临时变量保存
            while (i) {
                count += i % 10;
                i = i / 10;
            }
            i = temp_i;
            maxnum = max (maxnum, ++res[count]);//省去count++
        }
        return maxnum;
    }
};

 

标签:vector,盒子,int,highLimit,小球,lowLimit,编号,------,1742
From: https://www.cnblogs.com/slowlydance2me/p/16917346.html

相关文章

  • MySQL的概念、编译安装,以及自动补全
    一.数据库的基本概念1、数据(Data)•描述事物的符号记录•包括数字,文字,图形,图像,声音,档案记录等•以“记录”形式按统一的格式进行存储2、表•将不同的记录组织在一......
  • IDEA热部署插件
    JRebelandXRebel插件 一、开启IDEA配置二、生成GUID(1)生成GUID生成器地址:https://www.guidgen.comhttp://www.ofmonkey.com/transfer/guidhttps://www.guidgenera......
  • RedisTemplate 连接不释放的问题
    一、RedisTemplate配置enableTransactionSupport为true(开启事务)时,连接不会自动释放,解决方案:1.enableTransactionSupport设置为false(关闭事务)或2.RedisTemplate操......
  • 搞笑图片
    有好玩的图片欢迎私信(欢迎转载)转载自我的Luogu:https://www.luogu.com.cn/paste/q6j9g0kf......
  • [C++]二进制求子集
    这几天做[leetcode1178]猜字谜的题目,用到了很多小的知识技巧点。其中一个就是二进制状态压缩以及如何根据一个二进制序列求其子集,如二进制序列110111001子集里有000000001......
  • 漏洞修复记录
     一、IIS返回头 漏洞描述此Web应用程序返回的HTTP响应包括名为Server的响应头。响应头的值包含MicrosoftIIS服务器的版本信息。此Web应用程序返回的HTTP响应......
  • MFC对话框初始函数
     对话框初始函数:OnInitDialog()如果没有需要自己添加  注意:  代码只能加在此处      ......
  • 如何修改Git Bash默认打开之后的路径
    1、右键选择并进入GitBash的属性栏。2、设置对应属性值,注意要删掉“目标”里的"--cd-to-home",否则默认进入不了所设置的起始位置,如下:  3、重新启动GitBash,即进入......
  • 涪陵合川BGP物理机托管
    目前,越来越多的企业通过使用高防服务器,来永久保护其商业网站免受DDoS攻击。高防服务器提供多条国际优质线路,在未遇到DDoS攻击时,采用中国电信双向CN2线路直连中国大陆,保障极......
  • git基本操作
    本文主要记录了Git常用的一些命令,和Git基本使用教学,包括了版本库的创建、代码提交、推送、拉取、版本回退、撤销等操作。(摘录自https://www.lixueduan.com/posts/git/02-gi......