I - 三角形
给定三条边,请你判断一下能不能组成一个三角形。
Input
输入数据第一行包含一个数M,接下有M行,每行一个实例,包含三个正数A,B,C。其中A,B,C <1000;
Output
对于每个测试实例,如果三条边长A,B,C能组成三角形的话,输出YES,否则NO。
Sample Input
2
1 2 3
2 2 2
Sample Output
NO
YES
三角形嘛,任意两遍之和大于第三边,任意两边之差小于第三边。
源代码如下:
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
int n;
cin >> n;
while (n--)
{
double a[3];
cin >> a[0] >> a[1] >> a[2];
for (int i = 0; i < 2; i++)
{
for (int j = i + 1; j < 3; j++)
{
if (a[i] > a[j])
{
double b = a[i];
a[i] = a[j];
a[j] = b;
}
}
}
if (a[0] + a[1] > a[2] && a[2] - a[1] < a[0] && a[2] - a[0] < a[1])
cout << "YES" << endl;
else
cout << "NO" << endl;
}
return 0;
}