【每日一题】根据规则将箱子分类

编程入门 行业动态 更新时间:2024-10-22 15:36:19

【每日一题】根据规则将<a href=https://www.elefans.com/category/jswz/34/1670743.html style=箱子分类"/>

【每日一题】根据规则将箱子分类

文章目录

  • Tag
  • 题目来源
  • 题目解读
  • 解题思路
    • 方法一:分类讨论
  • 其他语言
    • c
    • python3
  • 写在最后

Tag

【分类讨论】【2023-10-20】


题目来源

2525. 根据规则将箱子分类


题目解读

题目意思明确,根据条件判断箱子的类别。


解题思路

方法一:分类讨论

根据题目的意思模拟,首先维护两个 bool 变量 isBulkyisHeavy来记录箱子的 BulkyHeavy 状况,初始都为 false

根据箱子的任一维度大于等于 1e4 与否或者箱子的体积大于等于 1e9 与否更新 isBulky。需要注意点是体积可能会越界(超出int整型可以表示的最大范围),因此先将体积强转成 long long 类型,再以 1e9 进行比较。

根据箱子的质量是否大于等于 100 更新 isHeavy

接下来就是条件语句的书写了,这里没有使用 if...else .. 语句,而是直接使用的 if,这样可以省去一些判断上的失误。但是并不是所有的 if...else .. 语句都可以改成 if 语句,至少本题是可以修改的。

实现代码

class Solution {
public:string categorizeBox(int length, int width, int height, int mass) {bool isBulky = false;bool isHeavy = false;if (length >= 1e4 || width >= 1e4 || height >= 1e4 || (long long) length * width * height >= 1e9) {isBulky = true;}if (mass >= 100) isHeavy = true;if (isBulky && isHeavy) return "Both";if (!isBulky && !isHeavy) return "Neither";if (isBulky && !isHeavy) return "Bulky";return "Heavy";}
};

复杂度分析

时间复杂度: O ( 1 ) O(1) O(1)。

空间复杂度: O ( 1 ) O(1) O(1)。


其他语言

c

char * categorizeBox(int length, int width, int height, int mass){int x = (length >= 10000 || width >= 10000 || height >= 10000 || (long long)length * height * width >= 1000000000);int y = (mass >= 100);if (x && y) return "Both";if (x) return "Bulky";if (y) return "Heavy";return "Neither";
}

python3

class Solution:def categorizeBox(self, length: int, width: int, height: int, mass: int) -> str:x = length >= 10000 or width >= 10000 or height >= 10000 or length * width * height >= 10 ** 9y = mass >= 100if x and y: return "Both"if x: return "Bulky"if y: return "Heavy"return "Neither"

写在最后

如果文章内容有任何错误或者您对文章有任何疑问,欢迎私信博主或者在评论区指出 💬💬💬。

如果大家有更优的时间、空间复杂度方法,欢迎评论区交流。

最后,感谢您的阅读,如果感到有所收获的话可以给博主点一个 👍 哦。

更多推荐

【每日一题】根据规则将箱子分类

本文发布于:2023-12-07 08:01:37,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1670612.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:箱子   规则

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!