检查 Python 中数字的所有数字频率是否相同
假设我们有一个数字 num,我们需要检查它是否平衡。当所有数字的频率都相同或不同时,数字是平衡的。
因此,如果输入类似于 num = 562256,则输出将为 True,因为每个数字的频率为 2。
为了解决这个问题,我们将遵循以下步骤:
- number := 将 num 转换为字符串
- freq := 包含 number 数字频率的映射
- freq_values := 通过获取 number 的所有数字频率值创建一个新的集合
- 如果 freq_values 的大小为 1,则
- 返回 True
- 返回 False
让我们看看下面的实现以更好地理解:
示例代码
from collections import defaultdict def solve(num): number = str(num) freq = defaultdict(int) n = len(number) for i in range(n): freq[int(number[i])] += 1 freq_values = set(freq.values()) if len(freq_values) == 1: return True return False num = 562256 print(solve(num))
输入
562256
Learn Python in-depth with real-world projects through our Python certification course. Enroll and become a certified expert to boost your career.
输出
True
广告