洛谷P5717 三角形分类 题解

#题外话(第26篇博客)(本题为普及-难度)

#先看题目

题目链接icon-default.png?t=N7T8https://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;
}

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值