免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
日々のプログラミングの問題
タイトル説明
整数、関数を書く考える 。それは3乗であるかどうかを決定
タイトル効果:整数与えられ、それが整数かどうかが決定される3。
n乗
サンプル
例1:
入力:27
出力:真
例2:
入力:0
出力:偽
例3:
入力:9
出力:真
例4:
入力:45
出力:偽
Pythonのソリューション
class Solution:
def isPowerOfThree(self, n: int) -> bool:
return n>0 and 1162261467 % n == 0
ランタイム:96 MS
メモリ使用量:13.9メガバイトの
反射後のタイトル:
- これは最も簡単な書き方ではなく、最速の文言でなければなりません。
- 1162261467は、許容可能なパワー内側最大整数32ビット符号付き整数3です。
C言語ソリューション
bool isPowerOfThree(int n){
return n>0?1162261467 % n == 0:false;
}
ランタイム:12ミリ秒、3乗のためのCオンライン提出の82.84パーセントよりも速いです。
メモリ使用量:7.5メガバイト、3乗のためのCオンライン提出未満の50.00パーセント。
题后反思:无
bool isPowerOfThree(int n){
while(n>2)
{
if (n%3)
return false;
n /= 3;
}
return n == 1;
}
ランタイム:24ミリ秒
メモリ使用量:7.5メガバイト
本論文では、私の個人的理解、間違った場所に歓迎のコメントは以下を教えている場合、私は速やかに修正し、一般的な進歩であります