2024-06-22:用go语言,给定一个起始下标为 0 的长度为3的整数数组 nums,根据这些数字构建三角形。
如果无法构成三角形,则返回 "none";
否则根据三角形的边长关系返回对应类型的字符串:
equilateral(等边三角形)、isosceles(等腰三角形)或 scalene(不等边三角形)。
输入:nums = [3,3,3]。
输出:"equilateral"。
答案2024-06-22:
chatgpt
题目来自leetcode3024。
大体步骤如下:
Go完整代码如下:
package mainimport ("fmt""slices"
)func triangleType(nums []int) string {slices.Sort(nums)x, y, z := nums[0], nums[1], nums[2]if x+y <= z { // 排序后,只需比较 x+y 和 zreturn "none"}if x == z { // 排序了,说明 y 也和 x z 相等return "equilateral"}if x == y || y == z {return "isosceles"}return "scalene"
}func main() {nums := []int{3, 3, 3}fmt.Println(triangleType(nums))
}
Python完整代码如下:
# -*-coding:utf-8-*-def triangle_type(nums):nums.sort()x, y, z = nums[0], nums[1], nums[2]if x + y <= z: # 排序后,只需比较 x+y 和 zreturn "none"if x == z: # 排序了,说明 y 也和 x z 相等return "equilateral"if x == y or y == z:return "isosceles"return "scalene"def main():nums = [3, 3, 3]print(triangle_type(nums))if __name__ == "__main__":main()