在Python中检查数字中所有数字的频率是否相同

假设我们有一个数字 num 我们必须检查是否平衡。当所有数字的频率相同或不同时,一个数字是平衡的。

因此,如果输入类似于 num = 562256,则输出将为 True,因为每个数字的频率为 2。

为了解决这个问题,我们将按照以下步骤操作 -

  • number := 将 num 转换为字符串

  • freq := 包含数字数字频率的映射

  • 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

输出结果

True

以上是 在Python中检查数字中所有数字的频率是否相同 的全部内容, 来源链接: utcz.com/z/327626.html

回到顶部