코딩테스트

[C] 팰린드롬 조사

갓 시작한 코린이 2022. 5. 26. 03:04

문제


문자열이 주어질 때, 이것이 팰린드롬인지 조사하는 프로그램을 작성하시오. 팰린드롬이란, 앞으로 읽을 때와 뒤로 읽을 때의 결과가 같은 문자열을 말한다.  

입력


첫 번째 줄에 문자열이 주어진다. ( 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