숫자인 num을 인자로 넘겨주면, 뒤집은 모양이 num과 똑같은지 여부를 반환해주세요.
num: 숫자
return: true or false (뒤집은 모양이 num와 똑같은지 여부)
num = 123
return false
=> 뒤집은 모양이 321 이기 때문
num = 1221
return true
=> 뒤집은 모양이 1221 이기 때문
num = -121
return false
=> 뒤집은 모양이 121- 이기 때문
num = 10
return false
=> 뒤집은 모양이 01 이기 때문
def same_reverse(num):
str_num = str(num)
reversed_num = str_num[::-1]
if str_num == reversed_num:
return True
return False
엊그제 했던 코드카타 문제와 비슷해서 금방 풀 수 있었다. [::-1]
꿀팁 바로 써먹기~!
def same_reverse(num):
num =str(num)
is_palindrome = True
for i in range(len(num) // 2):
if num[i] != num[-1 - i]:
is_palindrome = False
return is_palindrome
답안에서는 서로 대칭되는 index의 값을 비교하여 서로 같은지 아닌지를 판별했다.
index는 절반까지만 돌게하고, 홀수개만 있을때는 가장 중앙의 index는 비교할 짝이 없으므로 소숫점은 신경쓰지 않아도 된다. 즉, len(num)
을 2로 나눈 몫만큼만 for문 돌기