728x90
팔린드롬 문제
[파이썬(python) 풀이]
"토마토"나 "기러기"처럼 거꾸로 읽어도 똑같은 단어를 팔린드롬(palindrome)이라고 부릅니다. 문자열 word가 팔린드롬인지 확인하는 함수 is_palindrome를 쓰세요. is_palindrome은 word가 팔린드롬이면 True를, 팔린드롬이 아니면 False를 리턴합니다.
주의사항
* 반드시 for문을 사용해야 합니다.
* append, insert 메소드와 del 함수를 사용하면 안됩니다.
❧ 테스트 셋
def is_palindrome(word):
# Code
# test
print(is_palindrome("racecar"))
print(is_palindrome("stars"))
print(is_palindrome("토마토"))
print(is_palindrome("kayak"))
print(is_palindrome("hello"))
❧ 출력 예시
True
False
True
True
False
❧ 정답
def is_palindrome(word):
for i in range(len(word)):
if (word[i] != word[len(word) - 1 - i]):
return False
return True
# test
print(is_palindrome("racecar"))
print(is_palindrome("stars"))
print(is_palindrome("토마토"))
print(is_palindrome("kayak"))
print(is_palindrome("hello"))
1️⃣ 입력으로 받은 문자열의 첫 번째 요소와 맨 마지막 요소 비교.
2️⃣ 배열 맨 마지막 요소의 인덱스는 (전체 배열 길이 -1) 이므로 word[len(word) - 1 - i] .
728x90
'📊 Algorithm > Algorithm PS' 카테고리의 다른 글
[알고리즘 일기] 6. 선형 탐색 구현 알고리즘 (0) | 2021.05.06 |
---|---|
[알고리즘 일기] 5. 하노이의 탑 (0) | 2021.05.05 |
[알고리즘 일기] 4. 이진 탐색 구현 알고리즘(재귀) (0) | 2021.05.04 |
[알고리즘 일기] 3. 숫자 합, 자릿수 합 (0) | 2021.05.03 |
[알고리즘 일기] 2. 피보나치 수열 (0) | 2021.05.02 |