问题描述
给定三条边,请你判断一下能不能组成一个三角形。
输入
输入数据第一行包含一个数M,接下有M行,每行一个实例,包含三个正数A,B,C。其中A,B,C <1000;
输出
对于每个测试实例,如果三条边长A,B,C能组成三角形的话,输出YES,否则NO。
样本输入
2
1 2 3
2 2 2
样本输出
NO
YES
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n=sc.nextInt();
double arr[][]=new double[n][3];
for(int j=0;j<n;j++) {
arr[j][0] = sc.nextDouble();
arr[j][1] = sc.nextDouble();
arr[j][2] = sc.nextDouble();
}
for(int i=0;i<n;i++) {
double num=arr[i][0]+arr[i][1]+arr[i][2];
double max=Math.max(arr[i][0],Math.max(arr[i][1],arr[i][2]));
if(num-2*max>0){
System.out.println("YES");
}else {
System.out.println("NO");
}
}
}
}
注:一开始用的是int,试了好久答案错误,最后发现他说的是正数,所以包括浮点数,需要用double接