思路
三角形判定:
- 三条边都要大于0的实数
- 任意两边的和大于第三边
- 任意两边的差小于第三边
本题中,不需要判定第一个条件,由于第二第三条件等价,则只需判定一个即可。
踩坑点:需要注意三边是正数,并不是正整数。需要定义为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; }