題目連結:
題目意譯:
給定四個整數 length 、 width 、 height 和 mass,依序代表著一個箱子的長寬高以及質量。回傳一個字串,其代表著箱子之「種類」。
該箱子為 "Bulky" 代表著:
其任一維度之長度大於等於 10 ^ 4;
或是其體積大於等於 10 ^ 9。
如果該箱子的質量大於等於 100,則它為 "Heavy";
如果該箱子同時是 "Bulky" 也是 "Heavy",則代表其種類為 "Both";
如果該箱子同時不是 "Bulky" 也不是 "Heavy",則代表其種類為 "Neither";
如果該箱子是 "Bulky" 但不是 "Heavy",則代表其種類為 "Bulky";
如果該箱子不是 "Bulky" 但是 "Heavy",則代表其種類為 "Heavy"。
注意到箱子的體積為其長寬高三者之乘積。
限制:
1 ≦ length, width, height ≦ 10 ^ 5
1 ≦ mass ≦ 10 ^ 3
範例測資:
範例 1:
輸入: length = 1000, width = 35, height = 700, mass = 300
輸出: "Heavy"
解釋:
該箱子的任意維度之長度皆沒有大於等於 10 ^ 4。
而其體積 = 24500000 ≦ 10 ^ 9。所以它不 "Bulky"。
但是質量 ≧ 100,因此箱子是 "Heavy"。
由於箱子不是 "Bulky" 但是 "Heavy",因此我們回傳 "Heavy"。
範例 2:
輸入: length = 200, width = 50, height = 800, mass = 50
輸出: "Neither"
解釋:
該箱子的任意維度之長度皆沒有大於等於 10 ^ 4。
而其體積 = 8 × 10 ^ 6 ≦ 10 ^ 9。所以它不 "Bulky"。
而其質量也小於 100,因此箱子不是 "Heavy"。
由於箱子不是 "Bulky" 也不是 "Heavy",因此我們回傳 "Neither"。
解題思維:
相當直白的題目,直接按照題目的條件判斷即可(只是需要注意計算體積時可能會溢位)。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。