-
[Python] 회문 판별(palindrome)Python/Data Struc & algo 2018. 4. 18. 20:38
파이썬 회문 판별(palindrome)
회문(palindrome) : 순서를 거꾸로 읽어도 제대로 읽은 것과 같은 단어와 문장
Ex) 'level', 'sos', 'nurses run' 같은 단어와 문장
'l e v e l' 을 예를들어 보면, 첫 문자와 마지막 문자가 동일하고, 안으로 들어갈 수록 서로 같으면 회문
def palindrome(word): for i in range(len(word) // 2): if word[i] != word[-1 -i]: return False return True print(palindrome('level')) True
회문은 거꾸로 읽어도 동일하므로, 입력받은 문자열을 리스트로 변환하여 reversed(역순)와 비교하는 방법도 가능하다
words = ['level','sos','mama' ] for word in words: if list(word) == list(reversed(word)): # 역순과 비교 print(word, "회문 입니다") else: print(word, "회문이 아닙니다") level 회문 입니다 sos 회문 입니다 mama 회문이 아닙니다
'Python > Data Struc & algo' 카테고리의 다른 글
[Python] collections Counter를 이용한 합집합, 교집합, 차집합 구하기 (0) 2018.05.13 [Python] collections deque를 이용하여 리스트의 왼쪽에 요소 추가하기 (0) 2018.05.13 [Python] To find the sum of odd numbers up to the number range of N. (파이썬 N의 수 범위까지의 홀수의 합 구하기) (0) 2018.04.22 [Python] 홀수의 정수 리스트에서 중간값 추출하기 (1) 2018.04.19 프로그래머스 Lv2 - 자연수를 뒤집어 리스트로 만들기 (0) 2018.04.18 프로그래머스 Lv1 - x만큼 간격이 있는 n개의 숫자 (0) 2018.04.18 프로그래머스 - Lv1 제일 작은 수 제거하기 (0) 2018.04.17 [Python] collections - Counter 객체 (0) 2018.04.13