CODETAKA1-3

woo97·2022년 2월 21일
0

codetaka

목록 보기
4/4

문제

숫자인 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 이기 때문

생각

일단 이렇게 생각했다 .
숫자가 뒤집어도 같은 숫자를 먼저 찾으면 나머지는 알아서 해결된다고 생각하고 true만 찾았다 들어오는 값의 길이를 짝수나 홀수로 나눠서 생각헀다짝수는 123321 이라면 짝수라면 처음부터 끝까지 반으로나눠서 계산하면 찾을수 있을것이고 홀수라면 1235321 가운데 숫자만 빼놓고 생각하면 딱맞아 떨어지겠다 생각을 했지만 5라는 숫자를 해결할 방법이 없었다….
그래서 짝수나 홀수의 규칙성을 찾아보기로 하였다 . 규칙성을 이용하면 되지않을까? 물론 int는 문자열로 변환해서 인덱스 기준으로 생각해보기로 했다. i= -i-1 같으면 되지 않을까?
for문을 돌릴때 주의점은 range 설정 범위와 index가 일반문자열 길이보다 -1 작다는것도 중요하게 생각할점인것같다.

정답

def same_reverse(num):
    # 아래 코드를 입력해주세요.
  nums = str(num)
  for i in range(len(nums)):
    if nums[i] == nums[-i-1]:
      s = True
    else:
      return False
    return s
profile
인생의 함정은 세상 곳곳에 뚫려 있다.

0개의 댓글