编写一个程序,判断一个列表中的数字是否可以重新排列成一个连续的数字序列。
- 定义函数
is_consecutive_sequence()
,参数为num_list
。 - 在函数内,对列表进行排序。
- 然后,检查排序后的列表是否形成一个连续的序列,即每两个相邻元素之间的差值是1。
- 如果序列是连续的,则返回
True
,否则返回False
。
示例输入
1 3 5 4 2
示例输出
True
本题使用记录前一个元素的值并进行比较来判断是否连续。
def is_consecutive_sequence(num_list):
# 此处编写你的代码
num_list.sort()
if len(num_list)==1:
return False
last=num_list[0]
for i in range(1,len(num_list)):
if num_list[i]==last+1:
last+=1
else:
return False
return True
# 获取输入转为整数列表
nums = list(map(int, input().split()))
# 调用函数
print(is_consecutive_sequence(nums))