Strobogrammatic Number I
题目描述
looks the same when rotated 180 degrees
解题方法
Solution
class Solution(object):
s_map = {}
s_map["6"] = "9"
s_map["9"] = "6"
s_map["8"] = "8"
s_map["1"] = "1"
s_map["0"] = "0"
def isStrobogrammatic(self, num):
"""
:type num: str
:rtype: bool
"""
length = len(num)
start = 0
end = length - 1
while start <= end:
valid = self.isValid(num, start, end)
if valid:
start += 1
end -= 1
else:
return False
return True
def isValid(self, num, i, j):
if i == j:
if num[i] not in ["1", "0", "8"]:
return False
else:
return True
else:
if num[i] in self.s_map and self.s_map[num[i]] == num[j]:
return True
else:
return False