用 Python 找出仅有两个数字的 n 的倍数的程序


假设我们有一个数字 n。我们必须找到 x 的最小正值,x 仅由两个数字 9 和 0 组成,并且 x 是 n 的倍数。

因此,如果输入的 n = 26,则输出将为 90090。

为了解决这个问题,我们将遵循以下步骤 -

  • m := 9
  • x := 1
  • 当 m 不是 n 的倍数时,执行以下操作
    • x := x + 1
    • m := 在 x 的二进制形式中将所有 1 替换为 9
  • 以整数形式返回 m

示例

让我们看以下实现以加深理解 -

def solve(n):
   m = 9
   x = 1
   while m % n != 0:
      x += 1
      m = int(bin(x)[2:].replace('1','9'))
   return m

n = 26
print(solve(n))

输入

26

输出

90090

更新时间:2021 年 10 月 11 日

158 次浏览

开始您的 职业

完成该课程以获得认证

开始
广告