【每日一题Day353】LC2525根据规则将箱子分类 | 模拟

简介: 【每日一题Day353】LC2525根据规则将箱子分类 | 模拟

根据规则将箱子分类【LC2525】

给你四个整数 lengthwidthheightmass ,分别表示一个箱子的三个维度和质量,请你返回一个表示箱子 类别字符串

  • 如果满足以下条件,那么箱子是
"Bulky"
  • 的:
  • 箱子 至少有一个 维度大于等于 104
  • 或者箱子的 体积 大于等于 109
  • 如果箱子的质量大于等于 100 ,那么箱子是 "Heavy" 的。
  • 如果箱子同时是 "Bulky""Heavy" ,那么返回类别为 "Both"
  • 如果箱子既不是 "Bulky" ,也不是 "Heavy" ,那么返回类别为 "Neither"
  • 如果箱子是 "Bulky" 但不是 "Heavy" ,那么返回类别为 "Bulky"
  • 如果箱子是 "Heavy" 但不是 "Bulky" ,那么返回类别为 "Heavy"

注意,箱子的体积等于箱子的长度、宽度和高度的乘积。

  • 实现:变量标记
class Solution {
    public String categorizeBox(int length, int width, int height, int mass) {
        boolean isBulky = false, isHeavy = false;
        long v = 1L * length * width * height;
        if (length >= 10000 || width >= 10000 || height >= 10000 || v >= 1e9){
            isBulky = true;
        }
        if (mass >= 100){
            isHeavy = true;
        }
        if (isBulky && isHeavy){
            return "Both";
        }else if (isBulky){
            return "Bulky";
        }else if (isHeavy){
            return "Heavy";
        }else{
            return "Neither";
        }
    }
}

image.png

实现:数组标记

class Solution {
    public String categorizeBox(int length, int width, int height, int mass) {
        int ans = 0;
        long v = 1L * length * width * height;
        if (length >= 10000 || width >= 10000 || height >= 10000 || v >= 1e9){
            ans |= 1;
        }
        if (mass >= 100){
            ans |= 2;
        }
        String[] ss = {"Neither", "Bulky", "Heavy", "Both"};
        return ss[ans];
    }
}

image.png

目录
相关文章
|
2月前
【每日一题Day168】LC2427公因子的数目 | 模拟
【每日一题Day168】LC2427公因子的数目 | 模拟
25 1
|
2月前
|
机器人
【每日一题Day270】LC874模拟行走机器人 | 哈希表+模拟
【每日一题Day270】LC874模拟行走机器人 | 哈希表+模拟
31 0
|
2月前
【每日一题Day345】LC2562找出数组的串联值 | 模拟
【每日一题Day345】LC2562找出数组的串联值 | 模拟
24 0
|
2月前
|
人工智能 BI
【每日一题Day232】LC2699修改图中的边权 |最短路径
【每日一题Day232】LC2699修改图中的边权 |最短路径
23 0
|
定位技术
【CCCC】L3-007 天梯地图 (30分),两次Dijkstra+路径打印(数据点2,4错因),90行最短题解
【CCCC】L3-007 天梯地图 (30分),两次Dijkstra+路径打印(数据点2,4错因),90行最短题解
155 0
|
2月前
【每日一题Day133】LC2373矩阵中的局部最大值 | 模拟
【每日一题Day133】LC2373矩阵中的局部最大值 | 模拟
37 0
|
2月前
|
vr&ar
【每日一题Day166】LC1053交换一次的先前排列 | 贪心
【每日一题Day166】LC1053交换一次的先前排列 | 贪心
53 1
|
2月前
|
存储
【每日一题Day219】LC1093大样本统计 | 模拟
【每日一题Day219】LC1093大样本统计 | 模拟
32 0
【每日一题Day62】LC1760袋子里最少数目的球 | 二分查找
首先,将题意转化为,当操作次数一定时,求出单个袋子里球的数目的最大值的最小值y yy,那么可以通过二分查找的方法找到最终的y yy,二分查找的下限为1,上限为数组nums中的最大值
107 0
【每日一题Day62】LC1760袋子里最少数目的球 | 二分查找
|
机器学习/深度学习
【每日一题Day102】LC2315统计星号 | 模拟
思路:记录每个'|'的编号,统计第偶数个'|'之后、第奇数个'|'之前的星号,以及末尾剩余字符串的星号个数
68 0