leetcode(8)排列硬幣的js實現

2021-09-07 13:52:17 字數 707 閱讀 4088

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

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

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

示例 1:

n = 5

硬幣可排列成以下幾行:

¤¤ ¤

¤ ¤因為第三行不完整,所以返回2.

示例 2:

n = 8

硬幣可排列成以下幾行:

¤¤ ¤

¤ ¤ ¤

¤ ¤因為第四行不完整,所以返回3.

(1)第一種直接對n進行開放取整為m,對m*(m+1)/2進行判斷就好

(2)第二種方法乙個變數計數,乙個變數計算值的和,再進行判斷返回計數的值

(1)簡單實現:

/**

* @param n

* @return

*/var arrangecoins = function(n)

else

};

(2)普通實現:

/**

* @param n

* @return

*/var arrangecoins = function(n)

count++;

}return count;

};

LeetCode 441 排列硬幣

你總共有 n 枚硬幣,你需要將它們擺成乙個階梯形狀,第 k 行就必須正好有 k 枚硬幣。給定乙個數字 n,找出可形成完整階梯行的總行數。n 是乙個非負整數,並且在32位有符號整型的範圍內。執行用時 36ms 記憶體消耗 14mb 題後反思 這個時候就看出數學的用處了,一句話就可以代替注釋中的全部內容...

LeetCode 441 排列硬幣

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

441 排列硬幣

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