思路

三角形判定:

  1. 三条边都要大于0的实数
  2. 任意两边的和大于第三边
  3. 任意两边的差小于第三边

本题中,不需要判定第一个条件,由于第二第三条件等价,则只需判定一个即可。

踩坑点:需要注意三边是正数,并不是正整数。需要定义为float,否则WA。


代码

#include<stdio.h> int main(){ int M; float A,B,C;
    scanf("%d",&M); while(M--){
        scanf("%f %f %f",&A,&B,&C); if((A+B)>C&&(A+C)>B&&(B+C)>A)
            printf("YES\n"); else printf("NO\n");
    } return 0;
}