给定一个严格递增的n
正整数序列A(1) < A(2) < ... < A(n)
。我们需要找到边长作为3
这个序列的不同元素的三角形的数量。
由于n <= 6000
,检查每个可能的组合还不够快。有没有更好的算法?谢谢你的帮助。
我的伪代码:
for i from 0 till n - 2
for j from i+1 till n-1
for k from j+1 till n
if A[i] + A[j] > A[k] then count += 1
else break