반응형
주어진 코드
def is_palindrome(word):
# 테스트
print(is_palindrome("racecar"))
print(is_palindrome("stars"))
print(is_palindrome("토마토"))
print(is_palindrome("kayak"))
print(is_palindrome("hello"))
내가 푼 문제1
def is_palindrome(word):
list_word = list(word)
reverse_word = list(word) # list 변환
reverse_word.reverse() # 거꾸로 변환
return list_word == reverse_word
내가 푼 문제2
def is_palindrome(word):
word = list(word)
list_new = []
for i in range(len(word),0,-1) :
list_new.append(word[i-1])
if word == list_new :
return True
else :
return False
모범 답안
def is_palindrome(word):
for left in range(len(word) // 2):
# 한 쌍이라도 일치하지 않으면 바로 False를 리턴하고 함수를 끝냄
right = len(word) - left - 1
if word[left] != word[right]:
return False
# for문에서 나왔다면 모든 쌍이 일치
return True
반응형
'● 알고리즘, 자료구조 > 2021 알고리즘' 카테고리의 다른 글
랜덤 숫자 맞히기 게임 (0) | 2021.06.01 |
---|---|
알고리즘, datetime 모듈 (0) | 2021.06.01 |
주민번호 가리기 | 함수, 리스트, 문자열 (31) | 2021.05.31 |
피타고라스 | for 반복문 (0) | 2021.05.31 |
자릿수 합 구하기 | 함수, 반복문, 리스트와 스트링 타입의 특징 활용 (0) | 2021.05.31 |