2的冪,3的冪,4的冪

2021-09-26 09:06:39 字數 1272 閱讀 7527

給定乙個整數,編寫乙個函式來判斷它是否是 2 的冪次方。

示例 1:

輸入: 1

輸出: true

解釋: 20 = 1

示例 2:

輸入: 16

輸出: true

解釋: 24 = 16

示例 3:

輸入: 218

輸出: false

分析

class

solution

}

給定乙個整數,寫乙個函式來判斷它是否是 3 的冪次方。

示例 1:

輸入: 27

輸出: true

示例 2:

輸入: 0

輸出: false

示例 3:

輸入: 9

輸出: true

示例 4:

輸入: 45

輸出: false

高階:你能不使用迴圈或者遞迴來完成本題嗎?

分析

n =b

xn=b^x

n=bx

,即n =b

∗b∗b

....

∗b

n=b*b*b....*b

n=b∗b∗

b...

.∗b,如果能整除x,則將除以b x

xx次最後得到商為1,如果商不為1,則n不是b的x次冪。

class

solution

return n ==1;

}}

在4個位元組整數範圍內,3的冪次最大為319=

1162261467

3^=1162261467

319=11

6226

1467

,所以只要判斷其對n取餘是否為0即可。因為$ 3^ % 3^k =0 $

class

solution

}

class

solution

}

經典解法

class

solution

while

(num %4==

0)return num ==1;

}}

class

solution

}

冪數的 冪 的來歷

冪並非外來術語,其原意為蓋東西的方布。九章算數 第一章 方田 中的第二個問題如下 又有田廣十二步,從十四步。問為田幾何?答曰 一百六十八步。方田術曰 廣從步數相乘得積步。所謂方田就是矩形的田,廣是寬度,從是高度。對於這條問題,三國時 劉徽注解道 此積謂 田冪。凡廣從相乘謂之冪。所以至少從三國時期,冪...

2的冪次方

2的冪次方 noip1998 問題描述 任何乙個正整數都可以用2的冪次方表示。例如 137 2 7 2 3 2 0 同時約定方次用括號來表示,即ab可表示為a b 由此可知,137可表示為 2 7 2 3 2 0 進一步 7 2 2 2 2 0 21用2表示 3 2 2 0 所以最後137可表示為 ...

2的冪判別

轉 如何快速判斷正整數是否為2的冪 過往記憶 2的冪有以下兩個特點 1.20 1 0001,21 2 0010,22 4 0100,23 8 1000二進位制中只有乙個1,並且1後面跟了n個0。2.如果將這個數減去1後會發現,僅有的那個1會變為0,而原來的那n個0會變為1 因此將原來的數與去減去1後...