在Python中找到1的个数除以m后的余数的程序

在Python中找到1的个数除以m后的余数的程序

假设我们有两个数字n和m。我们需要找到n个1除以m后的余数。

所以,如果输入是n = 4,m = 27,则输出将为4,因为1111 mod 27 = 4。

为了解决这个问题,我们将执行以下步骤−

定义一个带有x、n、m参数的函数util()。

  • y:=1
  • 当n > 0时,执行以下操作
    • 如果n是奇数,则
      • y:= (y * x) mod m
    • x:= (x * x) mod m
      • n:= n/2的地板值
  • 返回y

从主方法返回floor((util(10, n, 9 * m) / 9))

示例

让我们看一下以下实现以更好地理解−

def util(x, n, m) :
     y = 1
     while n > 0 :
         if n & 1 :
            y = (y * x) % m
         x = (x * x) % m
         n >>= 1
     return y

def solve(n, m):
   return util(10, n, 9 * m) // 9

n = 4
m = 27
print(solve(n, m))

输入

4, 27

输出

4

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程