프로그래밍/백준

[C/C++] 백준 10988 - 팰린드롬인지 확인하기

더드미 2024. 7. 4. 11:25
728x90
반응형

  • 문제

알파벳 소문자로만 이루어진 단어가 주어진다. 이때, 이 단어가 팰린드롬인지 아닌지 확인하는 프로그램을 작성하시오.

팰린드롬이란 앞으로 읽을 때와 거꾸로 읽을 때 똑같은 단어를 말한다. 

level, noon은 팰린드롬이고, baekjoon, online, judge는 팰린드롬이 아니다.

 

  • 입력

첫째 줄에 단어가 주어진다. 단어의 길이는 1보다 크거나 같고, 100보다 작거나 같으며, 알파벳 소문자로만 이루어져 있다.

 

  • 출력

첫째 줄에 팰린드롬이면 1, 아니면 0을 출력한다.

 

 

  • 풀이

앞 글자와 맨 뒤 글자를 비교하여, 반복문 실행.

만약 글자가 7글자라면, 3번의 반복문이 실행하며, 조건문에는 s[0] != s[7 - 0 - 1] / s[1] != s[7 - 1 - 1] ... 이렇게 반복이 이루어 지면서 구분한다.

 

  • 코드 확인
더보기
#include <iostream>

using namespace std;

int main(){
    string s;

    cin >> s;
    for(int i = 0; i <= (s.length() / 2); i++){
            if(s[i] != s[s.length() - i - 1]){
                cout << 0;
                return 0;
            }
    }

    cout << 1;
    return 0;
}

 

훈수는 언제나 환영입니다

728x90
반응형