您的位置:首页 > 游戏 > 游戏 > 建筑设计大师_腾讯云申请域名_百度一下你就知道搜索_高质量发展服务业

建筑设计大师_腾讯云申请域名_百度一下你就知道搜索_高质量发展服务业

2025/5/18 6:59:12 来源:https://blog.csdn.net/BECOMEviolet/article/details/146925279  浏览:    关键词:建筑设计大师_腾讯云申请域名_百度一下你就知道搜索_高质量发展服务业
建筑设计大师_腾讯云申请域名_百度一下你就知道搜索_高质量发展服务业

题目描述

给出三条线段 a , b , c a,b,c a,b,c 的长度,均是不大于 10000 10000 10000 的正整数。打算把这三条线段拼成一个三角形,它可以是什么三角形呢?

  • 如果三条线段不能组成一个三角形,输出Not triangle
  • 如果是直角三角形,输出Right triangle
  • 如果是锐角三角形,输出Acute triangle
  • 如果是钝角三角形,输出Obtuse triangle
  • 如果是等腰三角形,输出Isosceles triangle
  • 如果是等边三角形,输出Equilateral triangle

如果这个三角形符合以上多个条件,请按以上顺序分别输出,并用换行符隔开。

输入格式

输入 3 个整数 a a a b b b c c c

输出格式

输出若干行判定字符串。

输入输出样例

输入

3 3 3

输出

Acute triangle
Isosceles triangle
Equilateral triangle

方式

代码

class Solution:@staticmethoddef oi_input():"""从标准输入读取数据"""sides = list(map(int, input().split()))return sides@staticmethoddef oi_test():"""提供测试数据"""return [3, 3, 3]@staticmethoddef solution(sides):sides.sort()a, b, c = sides[0], sides[1], sides[2]if a + b <= c or a + c <= b or b + c <= a:print("Not triangle")else:if sides[0] ** 2 + sides[1] ** 2 == c ** 2:print("Right triangle")elif sides[0] ** 2 + sides[1] ** 2 > c ** 2:print("Acute triangle")else:print("Obtuse triangle")if a == b or a == c or b == c:print("Isosceles triangle")if a == b == c:print("Equilateral triangle")oi_input = Solution.oi_input
oi_test = Solution.oi_test
solution = Solution.solutionif __name__ == '__main__':sides = oi_test()# sides = oi_input()solution(sides)

流程图

特殊类型判断
类型判断
是否有两边相等?
a==b || a==c || b==c
输出'Isosceles triangle'
跳过
是否三边相等?
a==b==c
输出'Equilateral triangle'
跳过
a² + b² == c²?
计算平方和
a² + b² vs c²
输出'Right triangle'
a² + b² > c²?
输出'Acute triangle'
输出'Obtuse triangle'
开始
主函数调用
读取输入数据
sides = list(map(int, input().split()))
排序三边
sides.sort()
解包变量
a,b,c = sides[0],sides[1],sides[2]
是否构成三角形?
a+b > c ?
输出'Not triangle'
结束

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com