📅  最后修改于: 2023-12-03 15:35:53.161000             🧑  作者: Mango
三角形火柴棍数是基于火柴棍的一个数学问题,可以用来训练数学直觉和创造力。问题是这样的:
用火柴棍拼出多少个不同的等边三角形?每个三角形的边长必须为整数,且同一个三角形不能重复计算。
不难发现,当边长为 $n$ 时,可以拼出 $T_n$ 个等边三角形,其中 $T_i$ 是第 $i$ 个三角形数。三角形数的计算公式是:
$$ T_n = \frac{n(n+1)}{2} $$
现在请你来编写一个函数,实现给定边长 $n$,计算出可拼出的等边三角形数量 $T_n$ 的功能。
输入:
4
输出:
4
当边长为 4 时,可以拼出 4 个等边三角形,如下图所示:
*
* *
* *
* *
def triangle_num(n: int) -> int:
return n * (n + 1) // 2
test_cases = [1, 2, 3, 4, 5]
for n in test_cases:
print(f"n = {n}, triangle number = {triangle_num(n)}")
输出:
n = 1, triangle number = 1
n = 2, triangle number = 3
n = 3, triangle number = 6
n = 4, triangle number = 10
n = 5, triangle number = 15
以上是一个简单的求三角形火柴棍数的实现,希望对读者有所帮助。