2024-04-18 10:32:45 发布
网友
给定一个X整数和整数Q的p,检查p是否包含数字1,2,…,Q
例如,给定以下数组p和Q=3
P[0] = 1 P[1] = 1 P[2] = 2 P[3] = 3 P[4] = 3
函数应返回True。在
以下是我所得到的,但我不确定我是否正确?在
将数组转换为集合,并将该集合与1到K之间所有整数的集合进行比较:
set(A)==set(range(1,K+1))
作为额外的好处,A不再需要排序。在
A
我知道你的问题,数组需要增加1或者从I到I+1相同。因此,您需要更改if语句中的符号。在
def solution(A, K): n = len(A) for i in xrange(n - 1): if (A[i] != A[i + 1] and A[i] + 1 != A[i + 1]): return False if (A[0] != 1 or A[n - 1] != K): return False else: return True >>>solution([1,2,3],3) True >>>solution([1,2,2,3,3],3) True >>>solution([1,2,3],4) False >>>solution([1,2,3],2) False
将数组转换为集合,并将该集合与1到K之间所有整数的集合进行比较:
作为额外的好处,
A
不再需要排序。在我知道你的问题,数组需要增加1或者从I到I+1相同。因此,您需要更改if语句中的符号。在
相关问题 更多 >
编程相关推荐