【LeetCode] 326。三つのパワー★

免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
このリンク: https://blog.csdn.net/xingyu97/article/details/100180730

タイトル説明

整数、関数を書く考える 。それは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メガバイトの
反射後のタイトル:

  1. これは最も簡単な書き方ではなく、最速の文言でなければなりません。
  2. 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メガバイト

本論文では、私の個人的理解、間違った場所に歓迎のコメントは以下を教えている場合、私は速やかに修正し、一般的な進歩であります

おすすめ

転載: blog.csdn.net/xingyu97/article/details/100180730