#题外话(第26篇博客)(本题为普及-难度)
#先看题目
题目链接https://www.luogu.com.cn/problem/P5717 #思路
用sort排序是一个很好的选择。毕竟后面都要用到边的长短。
判断三角形很简单:只要先排序,然后取小一些的两个数,看他俩相加大不大于第三者就行了。
这题挺简单,就是部分地方有些难
#代码
#include <bits/stdc++.h>//sort要使唤
using namespace std;
int main()
{
int a,b,c;//三条边
cin>>a>>b>>c;//输入
int t[3]={a,b,c};//数组,用来排序
sort(t,t+3);//排序,后面几个步骤都要用
if(t[0]+t[1]<=t[2])cout<<"Not triangle";//如果俩小的加起来不够大的,直接一票否决
else{
if((t[0]*t[0])+(t[1]*t[1])==(t[2]*t[2]))cout<<"Right triangle"<<endl;//这三个是按照条件摸出来的
if((t[0]*t[0])+(t[1]*t[1])>(t[2]*t[2]))cout<<"Acute triangle"<<endl;//这三个是按照条件摸出来的
if((t[0]*t[0])+(t[1]*t[1])<(t[2]*t[2]))cout<<"Obtuse triangle"<<endl;//这三个是按照条件摸出来的
if(a==b||b==c||a==c)cout<<"Isosceles triangle"<<endl;//任意两条边相等,就是等腰三角形
if(a==b&&b==c)cout<<"Equilateral triangle"<<endl;//a==b,b==c,a当然==c
}
return 0;
}