문제
알고리즘
- 0 이 들어오기 전까지 반복 하면서 팰린드롬 인지 아닌지 확인 해 주면 된다.
- 확인 법은 숫자를 string 으로 변경 한 후 앞, 뒤에서 부터 가운데로 좁혀 오며 확인 한다.
- 위의 예시에서 첫번째 단계인 1, 1은 같지만 두번째 단계의 2, 4는 다르기 때문에 false 를 리턴 하고 종료 해 준다.
- 이런 식으로 끝까지 숫자가 동일 하다면 팰린드롬수라 생각 하면 된다.
코드
#include<iostream>
#include<string>
using namespace std;
bool isFallin(string i_to_s){
bool result = true;
for(int i = 0; i < i_to_s.length()/2; i++){
if(i_to_s[i] != i_to_s[i_to_s.length()-i-1]){
result = false;
}
}
return result;
}
int main(){
while(true){
int input;
cin >> input;
if(input == 0) break;
string i_to_s = to_string(input);
if(isFallin(i_to_s)){
cout << "yes" << '\n';
} else {
cout << "no" << '\n';
}
}
return 0;
}
'알고리즘 > 백준' 카테고리의 다른 글
백준_1436 : 영화감독 숌 - C++ (0) | 2023.05.19 |
---|---|
백준_1074 : Z - C++ (0) | 2023.05.16 |
백준_1181 : 단어 정렬 - C++ (0) | 2023.05.16 |
백준_1012 : 유기농 배추 - C++ (1) | 2023.05.10 |
백준_1003 : 피보나치 함수 - C++ (1) | 2023.05.10 |