9.返信数(Python)

962 ワード

もっと素晴らしい内容は、「力ボタンの簡単な問題」に注目してください.
タイトル
難易度:★☆☆☆☆タイプ:数学
整数が文数であるかどうかを判断します.回文数とは、正の順序(左から右へ)と逆の順序(右から左へ)が同じ整数です.

例1:
入力:121出力:true
例2:入力:-121出力:false解釈:左から右へ-121です.右から左に読むと121-.したがって、回文数ではありません.
例3:入力:10出力:false解釈:右から左へ01.したがって、回文数ではありません.
進級:整数を文字列に変換しないでこの問題を解決できますか?
に答える
シナリオ1:数値を文字列に変換
逆シーケンス後の文字列が現在の文字列と等しいか否かを判定することにより、エコー列判定を実現する.
class Solution:
    def isPalindrome(self, x):
        return str(x) == str(x)[::-1]

シナリオ2:数値反転
反転後の文字が元の文字と等しいか否かを判定することにより、ここで負数は必ず回文数ではない.
class Solution:
    def isPalindrome(self, x):
        if x < 0:
            return False

        num = 0
        origin = x                  #    
        while origin != 0:
            tmp = origin % 10       #       
            num = num * 10 + tmp    #   num  
            origin = origin // 10   #       

        return x == num

質問やアドバイスがあれば、コメントエリアへようこそ~