팰린드롬 검사기

발행: (2025년 12월 15일 오후 11:55 GMT+9)
2 min read
원문: Dev.to

Source: Dev.to

palindrome이란?

palindrome은 단어, 구절, 숫자 또는 기타 문자 시퀀스로, 앞에서 읽으나 뒤에서 읽으나 같은 의미를 갖는(공백, 구두점, 대소문자를 무시) 문자열을 말합니다.

예시

InputResult
racecarTrue
A man a plan a canal PanamaTrue
helloFalse

Python 솔루션

def is_palindrome(s):
    """
    Checks if a string is a palindrome.
    Ignores case and spaces.
    """
    s = s.lower()
    s = s.replace(" ", "")
    return s == s[::-1]

# Test cases
print(is_palindrome("wilabaliw"))               # True
print(is_palindrome("A man a plan a canal Panama"))  # True

작동 원리

  1. 소문자로 변환

    s = s.lower()

    이를 통해 "Racecar""racecar"가 동일한 문자열로 취급됩니다.

  2. 공백 제거

    s = s.replace(" ", "")

    "A man a plan..."과 같은 구절에서 공백은 palindrome 판별에 영향을 주지 않으므로 제거합니다.

  3. 역순 문자열과 비교

    return s == s[::-1]

    s[::-1]은 문자열의 역순 복사본을 생성합니다. 정제된 원본 문자열이 역순과 같다면 함수는 True를 반환하고, 그렇지 않으면 False를 반환합니다.

행복한 코딩 되세요!

Back to Blog

관련 글

더 보기 »

중첩 리스트 평탄화

여러분, 안녕하세요! 👋 요즘 제가 좀 조용했죠. 사실 지난주에 꽤 심한 독감에 걸려서 완전히 쓰러졌어요. 🤒 그게 제가 …

주간 챌린지: 평균 진행

주간 챌린지 351 매주 Mohammad S. Anwar는 The Weekly Challenge https://theweeklychallenge.org/ 를 발행합니다. 이는 우리 모두가 솔루션을 고안할 기회입니다.