LeetCode 441 排列硬幣

2021-09-29 15:20:25 字數 1064 閱讀 2235

你總共有 n 枚硬幣,你需要將它們擺成乙個階梯形狀,第 k 行就必須正好有 k 枚硬幣。

給定乙個數字 n,找出可形成完整階梯行的總行數。

n 是乙個非負整數,並且在32位有符號整型的範圍內。

執行用時 : 36ms

記憶體消耗 : 14mb

題後反思:

這個時候就看出數學的用處了,一句話就可以代替注釋中的全部內容

參考當i=−

b+b2

−4ac

2ai=\frac}

i=2a−b

+b2−

4ac​

​時,此時取到的是令d=0的右值,因為d>=0,二次函式是乙個開口向上的,所以必須向下取整數。

用到了許多二次函式的性質,還有零點定理等。

#include

class solution

};

執行用時 : 4ms

記憶體消耗 : 8.3mb

題後反思:無

LeetCode 441 排列硬幣

你總共有 n 枚硬幣,你需要將它們擺成乙個階梯形狀,第 k 行就必須正好有 k 枚硬幣。給定乙個數字 n,找出可形成完整階梯行的總行數。n 是乙個非負整數,並且在32位有符號整型的範圍內。示例 1 n 5 硬幣可排列成以下幾行 因為第三行不完整,所以返回2.示例 2 n 8 硬幣可排列成以下幾行 因...

leetcode 441 排列硬幣(數學)

排列硬幣 category difficulty likes dislikes algorithms easy 39.48 42 br companies unknown 你總共有 n 枚硬幣,你需要將它們擺成乙個階梯形狀,第 k 行就必須正好有 k 枚硬幣。給定乙個數字 n,找出可形成完整階梯行的...

leetcode 441 排列硬幣(python)

1.題目描述 你總共有 n 枚硬幣,你需要將它們擺成乙個階梯形狀,第 k 行就必須正好有 k 枚硬幣。給定乙個數字 n,找出可形成完整階梯行的總行數。n 是乙個非負整數,並且在32位有符號整型的範圍內。示例 1 n 5 硬幣可排列成以下幾行 因為第三行不完整,所以返回2.示例 2 n 8 硬幣可排列...