📅  最后修改于: 2023-12-03 15:23:13.777000             🧑  作者: Mango
本程序用于在N中查找任意数P的幂。N和P可以由用户自己输入,程序将输出P的幂在N中出现的次数。
函数接口:
def find_power(n: int, p: int) -> int:
'''
在N中查找任意数P的幂
:param n: 待查找的数,范围在 [0, 10^9]
:param p: 指数,范围在 [0, 10^9]
:return: P的幂在N中出现的次数
'''
def find_power(n: int, p: int) -> int:
count = 0
while n > 0:
quotient, remainder = divmod(n, p)
if remainder == 0:
count += 1
n = quotient
else:
break
return count
首先,我们定义了一个 count
变量来计数P的幂在N中出现的次数。然后,我们使用一个循环来重复执行以下步骤:
将N除以P,得到一个商(quotient)和余数(remainder)。
如果余数为零,则增加 count
的值,并将 n
更新为商,以便重复该操作。
如果余数不为零,则跳出循环。
最后,我们返回 count
的值。
# 在100中查找2的幂
find_power(100, 2)
# 输出 2
# 在15中查找3的幂
find_power(15, 3)
# 输出 0
# 在729中查找3的幂
find_power(729, 3)
# 输出 6
以上是本程序的使用示例,可以看到对于不同的N和P,程序的输出正确,符合我们的预期。