알고리즘/백준

백준_1259 : 팰린드롬수 - C++

맏리믓 2023. 5. 16. 18:40

문제


알고리즘

- 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