原题
A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down).
Write a function to determine if a number is strobogrammatic. The number is represented as a string.
Example 1:
Input: “69”
Output: true
Example 2:
Input: “88”
Output: true
Example 3:
Input: “962”
Output: 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