这题真够水的,只不过一开始没看到输入的条件不仅仅是整数,所以直接WA了2次,最后认真读完题后,果断改成double。。。。AC、
这道题不用写个if 然后三个条件来判断,其实只需要做一个排序,找出最大的和次大,然后利用两边之和大于第三边,两边之差小于第三边的结论即可.
# include<cstdio>
# include<iostream>
# include<cstring>
# include<algorithm>
using namespace std;
double x[5];
int main(void)
{
int t;cin>>t;
while ( t-- )
{
double a,b,c;
cin>>a>>b>>c;
x[0] = a;
x[1] = b;
x[2] = c;
sort(x,x+3);
if ( x[2]+x[1]>x[0]&&x[2]-x[1]<x[0] )
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
}
return 0;
}