[leetcode] 246。ストロボグラマティック番号@python
246 Strobogrammatic Number Python
元の質問
ストロボグラマティック数は、180度回転したときに同じように見える数です(逆さまに見た場合)。
数値がストロボグラマティックであるかどうかを判別する関数を記述します。番号は文字列として表されます。
例1:
入力:「69」
出力:true
例2:
入力:「88」
出力:true
例3:
入力:「962」
出力:false
解決
辞書方式。 180度回転すると、実際には各文字が辞書内の対応する文字に変換され、numと比較して結果が逆になります。
コード
class Solution(object): def isStrobogrammatic(self, num): ''' :type num: str :rtype: bool ''' d = {'0':'0','1':'1','6':'9','8':'8','9':'6'} ans = '' for n in num: if n not in d: return False ans += d[n] return ans[::-1] == num