백준 25501번 : 재귀의 귀재
문제
코드
#include <stdio.h>
#include <string>
#include<iostream>
#include<string.h>
using namespace std;
int iNum = 0;
int recursion(const char* s, int l, int r) {
iNum++;
if (l >= r)
{
return 1;
}
else if (s[l] != s[r]) return 0;
else
{
return recursion(s, l + 1, r - 1);
}
}
int isPalindrome(const char* s) {
return recursion(s, 0, strlen(s) - 1);
}
int main()
{
int iTmp;
string sInput;
cin >> iTmp;
for (int i = 0; i < iTmp; i++)
{
cin >> sInput;
cout << isPalindrome(sInput.c_str()) <<" " <<iNum << endl;
iNum = 0;
}
}
풀이
.c_str() : string class 에서 담고 있는 문자열을 C에서의 const char* 타입으로 변환하여 반환해주는 편리한 멤버함수이다.
Leave a comment