题目:给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数。
示例 1:
输入: [2,2,3,4]
输出: 3
解释:
有效的组合是:
2,3,4 (使用第一个 2)
2,3,4 (使用第二个 2)
2,2,3
思路一:
要能构成三角形,需要保证任意两边之和大于第三边,那么可以对输入的数组先进行排序,这样只需要保证小的两边之和大于第三边即可。
代码:
public int triangleNumber(int[] nums) {
Arrays.sort(nums);
int result= 0;
if (nums.length < 3) {
return 0;
}
for (int i = 0