题目:
给你一个下标从 0 开始长度为 3
的整数数组 nums
,需要用它们来构造三角形。
- 如果一个三角形的所有边长度相等,那么这个三角形称为 equilateral 。
- 如果一个三角形恰好有两条边长度相等,那么这个三角形称为 isosceles 。
- 如果一个三角形三条边的长度互不相同,那么这个三角形称为 scalene 。
如果这个数组无法构成一个三角形,请你返回字符串 "none"
,否则返回一个字符串表示这个三角形的类型。
思路:
首先先将数组排序,数组一共三个数按升序排序,只要最小的两个数的和小于等于最大的数,则不满足一个三角形的条件,返回‘none’,其他条件按照题目描述设计即可。
代码:
class Solution:
def triangleType(self, nums: List[int]) -> str:
nums.sort()
x = nums[0]
y = nums[1]
z = nums[2]
if x + y <= z:
return 'none'
elif x == y and x == z:
return 'equilateral'
elif x == y or x == z or y == z:
return 'isosceles'
else:
return 'scalene'