문제
문자열이 주어질 때, 이것이 팰린드롬인지 조사하는 프로그램을 작성하시오. 팰린드롬이란, 앞으로 읽을 때와 뒤로 읽을 때의 결과가 같은 문자열을 말한다.
입력
첫 번째 줄에 문자열이 주어진다. ( 1 ≤ 문자열의 길이 ≤ 1,000 )
출력
입력된 문자열이 팰린드롬이면 YES, 아니면 NO를 출력한다.
예제 입력
abcba
예제 출력
YES
예제 입력
abcbd
예제 출력
NO
#include <stdio.h>
#include <string.h>
//팰린드롬인지 아닌지 판별하는 함수
bool isPalindrome(char str[],int a, int b)
{
if(a>=b) return true;
else if(str[a]!=str[b]) return false;
else
{
return isPalindrome(str,a+1,b-1);
}
}
int main() {
//Please Enter Your Code Here
char str[1000];
bool result;
fgets(str,1000,stdin);
result = isPalindrome(str,0,strlen(str)-1);
if(result==true) printf("YES");
else printf("NO");
return 0;
}
'코딩테스트' 카테고리의 다른 글
[C] 문자열 정렬 (0) | 2022.05.26 |
---|---|
[C] 문자열 압축 (0) | 2022.05.26 |
[C] 과제물 망치기 (0) | 2022.05.26 |
[C] 대소문자 변환 (0) | 2022.05.26 |
[C] chebyshevtheo (0) | 2022.05.26 |