牛牛手里有N根木棒,分别编号为1~N,现在他从N根里想取出三根木棒,使得三根木棒构成一个三角形,你能计算出牛牛有多少种取法吗?(考虑两种取法中使用的木棒编号有一个不一样就认为是不同的取法)。 输入描述: 首先输入一个正整数N,接下来的一行共有N个正整数表示每个木棒的长度。
N ≤ 50, 木棒的长度 ≤ 10000.
输出描述: 输出一个整数表示方法数。 示例1 输入 5 1 2 3 4 5 输出 3
import itertools
def isTriangle(arr):
arr.sort()
if arr[0]+arr[1]>arr[2]:
return True
else:
return False
if __name__=='__main__':
n=int(input())
nums=list(map(int,input().split()))
count=0
for i in itertools.combinations(nums, 3):
if isTriangle(list(i)):
count+=1
print(count)