问题描述
我知道如何找到最近的三角形数: m = 地板(sqrt(2N) T = m(m+1)/2 但这会返回最接近 N 的三角形数。 我想要最近的三角形数大于或等于 N。 所以如果我输入 7,我想要 10,而不是 6。 有人可以帮我吗?
解决方法
计算相应的二次方程m
的{{1}},将其四舍五入(使用上限)并得到所需的结果。
Python 示例:
m*(m+1)/2 >= N
我知道如何找到最近的三角形数: m = 地板(sqrt(2N) T = m(m+1)/2 但这会返回最接近 N 的三角形数。 我想要最近的三角形数大于或等于 N。 所以如果我输入 7,我想要 10,而不是 6。 有人可以帮我吗?
计算相应的二次方程m
的{{1}},将其四舍五入(使用上限)并得到所需的结果。
Python 示例:
m*(m+1)/2 >= N