본문 바로가기

코딩

[Python] 백준 #25501. 재귀의 귀재

https://www.acmicpc.net/problem/25501

 

25501번: 재귀의 귀재

각 테스트케이스마다, isPalindrome 함수의 반환값과 recursion 함수의 호출 횟수를 한 줄에 공백으로 구분하여 출력한다.

www.acmicpc.net

# 25501 - Python 3

import sys

input = sys.stdin.readline

def recursion(s, l, r):
    if l >= r:
        return 1, l+1                   # 재귀횟수 -1인 l에 +1 한 값을 return 하도록
    elif s[l] != s[r]:
        return 0, l+1                   # 마찬가지
    else:
        return recursion(s, l+1, r-1)

def isPalindrome(s):
    return recursion(s, 0, len(s)-1)

n = int(input())

for i in range(n):
    x = list(map(str, input().strip()))
    print(*isPalindrome(x))