三角形
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 124501 Accepted Submission(s): 40022
Problem Description
给定三条边,请你判断一下能不能组成一个三角形。
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
问题链接:https://vjudge.net/problem/HDU-2039
问题分析:
1)每组数据都作为三角形的三边,注意是正数,不是整数,所以变量类型注意为double。
2)利用三角形边边关系,两边之和大于第三边,作为判断条件。
3)输入一个整数n作为需要解决的例子数,利用while(n–)控制解决多少例子(或者按下面的代码来,一样)。
已AC的代码:
#include<iostream>
using namespace std;
int main()
{
int m;
cin>>m;
double a,b,c;//注意为double
while(m>0)
{
cin>>a>>b>>c;
if(a<b+c&&c<a+b&&b<a+c)
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
m--;
}
}