백준(C언어)/23년 1월
재귀 - 25501번
C0MPAS
2023. 1. 7. 17:29
1월 7일(토) - 재귀(25501번)
25501번: 재귀의 귀재
각 테스트케이스마다, isPalindrome 함수의 반환값과 recursion 함수의 호출 횟수를 한 줄에 공백으로 구분하여 출력한다.
www.acmicpc.net
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
문제점
x
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
풀이
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable: 4996)
#include <stdio.h>
#include <string.h>
int count;
int recursion_count()
{
count++;
return count;
}
int recursion(const char* s, int l, int r)
{
if (l >= r)
{
return 1;
}
else if (s[l] != s[r])
{
return 0;
}
else
{
recursion_count();
return recursion(s, l + 1, r - 1);
}
}
int isPalindrome(const char* s)
{
return recursion(s, 0, strlen(s) - 1);
}
int main(void)
{
int t;
scanf("%d", &t);
char s[1001];
for (int i = 0; i < t; i++)
{
scanf("%s", s);
printf("%d ", isPalindrome(s));
printf("%d\n", recursion_count());
count = 0;
}
}