날짜:
프로그래밍 지식
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
팰린드롬 문제 중에 가장 쉬운 문제가 아닐까 싶다. 물론, 런타임을 최대한 줄여야 한다면 그리 간단하지는 않을 수 있겠지만, 일단 푸는게 목적이니깐..
난이도도 쉬움이라 그런지, 문제가 짧고 다른 문제처럼 복잡한 테스트 케이스는 없어보였다. 물론, 실제로도 굉장히 간단한 문제라고 할 수 있다. 왜냐하면, 숫자로만 이루어져있기때문에..
일단, 팰린드롬 문자열이 무엇인지 알아보자.
팰린드롬은 한국말로하면 회문이라고 한다. 회문은 한자로 回文로 쓰이는데, 이것은 원래대로 읽으나 거꾸로 읽으나 같은 문자열인 것을 말한다.
예를들면, 기러기, 수박이박수 와 같이 읽는 순서가 달라도 같은 문자열인 것을 말한다.
팰린드롬은 문장 및 어떠한 조건이 더해질 때마다 난이도가 올라간다고 할 수 있다. 그런데, 이번 문제는 정수만 주어지므로, 간단한 문제라 할 수 있다.
그러므로, 다음과 같이 문제를 풀기로 했다.
1. 숫자를 한 자리씩 벡터로 옮긴다.
2. 벡터를 순서대로 접근하여 뒷자리와 비교하여 같은 숫자인지 비교한다.
3. 이때, 반복문은 벡터 크기 / 2만큼 돈다.
일단, 접근 방법처럼 문제를 풀어 보았다. 간단한 문제이므로, 통과도 한번에 할 수 있었다.
다만, 런타임 속도가 너무 늦게 측정 되었다.
위와 같은 속도 차이라면, 무언가 팰린드롬에 맞는 방법이 따로 있다는 것이거나, 너무 비효율적으로 구현한 것일 것이다.
추후에는 다른 방법으로 접근하여 런타임을 줄이는 방법을 생각해봐야 될 것 같다.
댓글
댓글 쓰기