你有 4 張寫有 1 到 9 數字的牌。你需要判斷是否能通過 *,/,+,-,(,) 的運算得到 24。
示例 1:
輸入: [4, 1, 8, 7]
輸出: true
解釋: (8-4) * (7-1) = 24
示例 2:
輸入: [1, 2, 1, 2]
輸出: false
注意:
除法運算子 / 表示實數除法,而不是整數除法。例如 4 / (1 - 2/3) = 12 。
每個運算子對兩個數進行運算。特別是我們不能用 - 作為一元運算子。例如,[1, 1, 1, 1] 作為輸入時,表示式 -1 - 1 - 1 - 1 是不允許的。
你不能將數字連線在一起。例如,輸入為 [1, 2, 1, 2] 時,不能寫成 12 + 12 。
class
solution
void
helper
(vector<
double
>
& nums,
double eps,
bool
& res)
for(
int i =
0; i < nums.
size()
;++i);if
(p > eps) t.
push_back
(q / p);if
(q > eps) t.
push_back
(p / q)
; nums.
erase
(nums.
begin()
+ i)
; nums.
erase
(nums.
begin()
+ j)
;for
(double d : t)
nums.
insert
(nums.
begin()
+ j, q)
;// 回溯過程恢復現場
nums.
insert
(nums.
begin()
+ i, p);}
}}};
力扣 679 24點遊戲
題目描述 你有 4 張寫有 1 到 9 數字的牌。你需要判斷是否能通過 的運算得到 24。示例 1 輸入 4,1,8,7 輸出 true 解釋 8 4 7 1 24 示例 2 輸入 1,2,1,2 輸出 false 注意 除法運算子 表示實數除法,而不是整數除法。例如 4 1 2 3 12 每個運算...
遊LeetCode一月之閒談
今年的2月比往常更長,不是因為比往年多了一天,而是被病毒隔離在家的日子顯得十分漫長。如果再不給自己找點事情做的話,且不論身體方面的健康狀況,精神方面可能也會有些隱憂。做為一名工程師,適時地讀上幾本平日可能沒時間閱讀的好書,應當是不錯的選項。而除此之外,也可以做點有趣的演算法題目以做消遣。當今,lee...
學渣帶你刷Leetcode292 Nim 遊戲
你和你的朋友,兩個人一起玩 nim 遊戲 桌子上有一堆石頭,每次你們輪流拿掉 1 3 塊石頭。拿掉最後一塊石頭的人就是獲勝者。你作為先手。你們是聰明人,每一步都是最優解。編寫乙個函式,來判斷你是否可以在給定石頭數量的情況下贏得遊戲。示例 輸入 4 輸出 false 解釋 如果堆中有 4 塊石頭,那麼...