2018-12-08 acm日常 HDU

D - Problem D HDU - 2039

给定三条边,请你判断一下能不能组成一个三角形。
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

优化:例举出成立条件,而不是例举出错误条件。
数据量大,需要使用double。

/*
miku saiko
*/
#include<iostream>
using namespace std;

int main()
{
	double n, a, b, c;
	cin >> n;
	while(n)
	{
		cin >> a >> b >> c;
		if (a + b > c&&a + c > b&&b + c > a)
		{
			cout << "YES" << endl;
		}
		else
		{
			cout << "NO" << endl;
		}
		n--;
	}
	return 0;
}
原文地址:https://www.cnblogs.com/gidear/p/10433295.html