잡동사니/[2022] 회로이론

[백준/C] 25501번 재귀의 귀재

heylo 2022. 12. 11. 02:30

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

 

25501번: 재귀의 귀재

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

www.acmicpc.net

 

코드가 문제에 모두 공개가 되어있다

뭐지

 

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#define MAX_STRING_SIZE 1001

int cnt = 0;
int recursion(const char* str, int left, int right) {
    if (left >= right) return 1;
    else if (str[left] != str[right]) return 0;
    else {
        cnt++;
        return recursion(str, left + 1, right - 1);
    }
}

int isPalindrome(const char* s) {
    cnt++;
    return recursion(s, 0, strlen(s) - 1);
    
}

int main() {
    int n, i;
    char str[MAX_STRING_SIZE];

    scanf("%d", &n);
    for (i = 0; i < n; i++) {
        scanf("%s", str);
        printf("%d ", isPalindrome(str));
        printf("%d\n", cnt);
        cnt = 0;
    }
}