判定一个数num是否为x的幂

那个数所在类型中,x的幂最大值为max

1、则第一条判定:max%num==0;

若x不为任何数的幂,则第一条判定足矣。

若x为某个数的幂,则要加判定条件

2、(num-1)%(x-1)==0

同时满足这两个条件的num,必然为x的幂。

第二个条件可以用数学来证明,把num写成一堆x相乘,拿去除以(x-1),分子添项,一项一项除,最后必然没有余数。

猜你喜欢

转载自www.cnblogs.com/zhuangbijingdeboke/p/9090146.html