题目描述
给定三个正整数,分别表示三条线段的长度,判断这三条线段能否构成一个三角形。
输入格式
输入共一行,包含三个正整数,分别表示三条线段的长度,数与数之间以一个空格分开。(三条边的长度均不超过 10000)
输出格式
如果能构成三角形,则输出 1 ,否则输出 0。
输入输出样例
样例 #1
样例输入 #1
1 1 1
样例输出 #1
1
样例 #2
样例输入 #2
1 1 3
样例输出 #2
0
知周所仲
退化三角形就是指面积为0的三角形,且不符合非退化三角形的性质两边之和大于第三边,角的度数通常为(180°,0°,0°)或(90°,90°,0°),且有一边为0。当然,大家所说的三角形一般都是非退化三角形。
所以根据两边之和大于的三边的性质,可以写出这样的程序
if(a+b<=c || a+c<=b || c+b<=a ) cout<<0;
这样最重要的部分就写完了,接着的操作大家懂的都懂
#include<bits/stdc++.h>
using namespace std;
int main(){
int a,b,c;
cin>>a>>b>>c;
if(a+b<=c || a+c<=b || c+b<=a ) cout<<0;
else cout<<1;
return 0;
}
AC记录详情:记录详情 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
注:题解仅供学习参考使用