查看是否为等差序列
Posted acodingdg
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查看是否为等差序列相关的知识,希望对你有一定的参考价值。
刷知乎的时候看到的题目,思路是评论区大佬给的
有点像排序里的计数排序法
代码如下
def isArithmeticSequence(A): B = [0] * len(A) min_value = min(A) max_value = max(A) d = (max_value - min_value) // (len(A) - 1) for i in A: if (i - min_value) % d == 0: seq_num = (i - min_value) // d B[seq_num] = 1 if sum(B) == len(A): return True else: return False if __name__ == ‘__main__‘: A = input("A sequence of numbers: ") A = [i for i in map(int, A.strip().split())] if isArithmeticSequence(A): print("Yes") else: print(‘No‘)
以上是关于查看是否为等差序列的主要内容,如果未能解决你的问题,请参考以下文章