[백준 13235] 팰린드롬
팰린드롬, 즉 회문(palindrome)은 거꾸로 읽어도 원래 문장, 단어와 똑같은 문자열을 말합니다.
가장 먼저 생각할 수 있는 방법은 다음과 같습니다.
맨 처음 글자와 끝 글자를 살펴본 다음, 차례대로 안쪽으로 들어가며 겹겹이 확인하는 것입니다.
맨 처음부터 살펴보는 인덱스는 i로 설정하고
뒤에서부터 살펴보는 인덱스는 -1-i로 설정하여
두 글자가 서로 같으면 계속 진행하고 다르면 break를 통해 제어 흐름을 중단하면 되며,
문자열의 중간까지만 살펴보면 되므로 range(len(단어)//2)까지로 범위를 설정해줍니다.
하지만 좀 더 Pythonic한 간단한 방법이 존재합니다.
Python에서 slicing은 내부적으로 매우 빠르게 동작합니다.
위치를 지정하면 해당 위치의 배열 포인터를 얻게 되어
연결된 객체를 찾아서 실제적인 값을 얻어내는데 이 과정이 매우 빠르기 때문에
slicing을 우선적으로 사용하는 것이 시간 효율면에서 속도 개선에 매우 유리합니다.
[::-1]로 지정해주면 문자열을 거꾸로 뒤집을 수 있는데,
만약 원래 문자열과 비교했을때 같다면 팰린드롬임을 의미하는 것입니다.
따라서, 원래 문자열과 뒤집은 문자열을 단순 비교함으로써 더 쉽게 결과를 출력할 수 있습니다.
문제 : 백준 13235 - 팰린드롬