본문 바로가기

알고리즘 문제

[C/C++ 백준 1259번] 팰린드롬수 (Bronze 1) (Class 2)

https://www.acmicpc.net/problem/1259

 

1259번: 팰린드롬수

문제 어떤 단어를 뒤에서부터 읽어도 똑같다면 그 단어를 팰린드롬이라고 한다. 'radar', 'sees'는 팰린드롬이다. 수도 팰린드롬으로 취급할 수 있다. 수의 숫자들을 뒤에서부터 읽어도 같다면 그 ��

www.acmicpc.net

다시보는 팰린드롬수. 빨리 푸느라 좀 조잡한데, 그냥 자릿수로 나눠서 앞자리와 뒷자리를 비교해주면 풀 수 있다.

 

코드는 다음과 같다.

#include <cstdio>
int main(void){
	int n, i;
	char number[5];
	bool correct;
	while(1){
		scanf("%d",&n);
		if(n==0)
			break;
		correct = true;
		number[5]={};
		i = 0;
		while(n){
			number[i] = n % 10;
			n = n/10;
			i++;
		}
		i--;
		for(int j=0; j<=i/2; j++){
			if(number[j]!=number[i-j])
				correct = false;
		}
		if(correct){
			printf("yes\n");
		}
		else if(!correct)
			printf("no\n");
	}
}