Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình kiểm tra cấp số cộng từ dãy số trong Python

Cho danh sách nums. Kiểm tra xem các phần tử có tạo thành cấp số cộng (AP) hay không (sau khi sắp xếp).

Ví dụ: nums = [9,1,17,5,13] → True vì sắp xếp thành [1,5,9,13,17], công sai = 4.

Thuật toán

  • Sắp xếp nums.
  • Nếu độ dài > 1, const = nums[1] - nums[0]; ngược lại trả về True.
  • Duyệt i từ 0 đến len(nums)-2: nếu nums[i+1] - nums[i] != const, trả về False.
  • Trả về True.

Ví dụ (Python)

def solve(nums):
    nums = sorted(nums)
    if len(nums) > 1:
        const = nums[1] - nums[0]
    else:
        return True
    for i in range(len(nums)-1):
        if nums[i+1] - nums[i] != const:
            return False
    return True

nums = [9,1,17,5,13]
print(solve(nums))

Đầu vào

[9,1,17,5,13]

Đầu ra

True