C언어/주차별 문제
[5주차] Palindromes
슈슈버거
2023. 4. 23. 01:01
문제

내가 작성한 코드
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>
int main() {
int n; //입력받을 문자의 개수
scanf("%d", &n);
for(int i = 0; i<n; i++){ //그 개수만큼 반복
int m; //문자열의 길이
scanf("%d", &m);
char word[m]; //문자 저장
scanf("%s", &word);
int len; //탐색할 길이 변수
if(m%2 == 0){ //짝수일 경우
len = m/2; //그냥 나누기
}
else{ //홀수일 경우
len = m/2 + 1; // 2로 나누고 1 더하기
}
int result = 0; //일치여부 판단 변수
for(int i = 0; i<len; i++){ //길이만큼 탐색
if(word[i] != word[m-1-i]){ //길이 기준으로 대칭으로 일치가 아닐 경우
result = 1; //일치하지 않는다는 의미
break; //반복문 종료
}
}
//탐색 종료
if(result == 1){ //result가 1일 경우
printf("NO\n"); //NO 출력
}
else{ //다를 경우
printf("YES\n"); //YES 출력
}
}
return 0;
}