백준 저지 17609번 회문/유사회문 문제 Pseudo code + Python code
문제풀이 접근 방식 : 재귀호출
Pseudo code #1 RecursionError
본 코드 #1
1 | shift_flag = False |
첫 번째 재귀함수를 사용한 풀이 방법에는 문제가 있다. 파이썬의 최대 재귀 깊이(maximum recursion depth)가 1000으로 정해져 있다.
따라서 문제의 조건 주어지는 문자열의 길이는 3 이상 100,000 이하이고, 영문 알파벳 소문자로만 이루어져 있다.
라는 조건에 있어서 최장 문자열의 길이에 대한 적절한 해결책이 되지 못한다.
최소한으로 재귀호출을 해서 문제를 해결해야 한다.
Pseudo code #2 최소 재귀호출
유사 재귀호출의 경우에만 재귀호출 형태로 함수를 호출하고 회문인 경우에는 조건처리가 끝나면 자동으로 회문인 것으로 간주한다.
본 코드 #2
1 | # 유사회문 검사 function |