给你n根木棍,每根都有L厘米长,求这里面可以组成几个三角形?
第一行一个n
第二行n个L
一个数,表示能组成的三角形个数。
4
3 4 2 1
1
对于 10% 的数据,1 ≤ N ≤ 10。
对于 70% 的数据,1 ≤ N ≤ 100。
对于 100% 的数据:1 ≤ N ≤ 2000, 1 ≤ Li ≤ 103。
附上BUG代码
#include <bits/stdc++.h>
using namespace std;
int n;
int a[2023];
long long ans = 0;
int main()
{
cin >> n;
for(int i = 1;i <= n;i++)
{
cin >> a[i];
}
for(int i = 1;i <= n;i++)
{
for(int j = 1;j <= n && i != j;j++)
{
for(int k = 1;k <= n && k != i && k != j;k++)
{
if(a[i] + a[j] > a[k] && a[i] + a[k] > a[j] && a[j] + a[k] > a[i])
{
ans++;
}
}
}
}
cout << ans;
return 0;
}