【leetcode刷题】T200-排列硬币

  • 2019 年 11 月 24 日
  • 筆記

【题目】

你总共有 n 枚硬币,你需要将它们摆成一个阶梯形状,第 k 行就必须正好有 k 枚硬币。

给定一个数字 n,找出可形成完整阶梯行的总行数。

n 是一个非负整数,并且在32位有符号整型的范围内。

示例 1:  n = 5  硬币可排列成以下几行:  ¤  ¤ ¤  ¤ ¤  因为第三行不完整,所以返回2.    示例 2:  n = 8  硬币可排列成以下几行:  ¤  ¤ ¤  ¤ ¤ ¤  ¤ ¤  因为第四行不完整,所以返回3.

【思路】

本题较为简单,可以直接考虑循环。

当然可以考虑等差数组公式。

【代码】

python版本

class Solution(object):      def arrangeCoins(self, n):          """          :type n: int          :rtype: int          """          k = 0          while n >= 0:              k += 1              n -= k          return k - 1

前一篇文章:T199-第N个数字