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

Kiểm tra tần suất các chữ số trong số có bằng nhau không trong Python

Một số được gọi là cân bằng nếu tần suất xuất hiện của mọi chữ số trong nó đều bằng nhau.

Ví dụ: 562256 → các chữ số 5,6,2 đều xuất hiện 2 lần → True.

Giải thuật

  • Chuyển số thành chuỗi.
  • Đếm tần suất mỗi chữ số.
  • Tạo tập hợp từ các giá trị tần suất. Nếu tập hợp chỉ có 1 phần tử → True.

Mã ví dụ

from collections import defaultdict

def solve(num):
    number = str(num)
    freq = defaultdict(int)
    for i in range(len(number)):
        freq[int(number[i])] += 1
    freq_values = set(freq.values())
    if len(freq_values) == 1:
        return True
    return False

num = 562256
print(solve(num))

Đầu vào

562256

Đầu ra

True