-
[Baekjoon(백준)][10988번] 팰린드롬인지 확인하기(C++)2024년 01월 24일
- 유니얼
-
작성자
-
2024.01.24.:15
728x90안녕하세요! 오늘은 코딩테스트 문제 중 하나인 " 팰린드롬인지 확인하기" 문제를 해결하는 방법에 대해 설명하려고 합니다. "팰린드롬인지 확인하기" 문제는 주어진 단어가 팰린드롬인지를 확인하는 문제입니다. 문제를 해결하는 과정과 코드를 자세히 알아보겠습니다.
문제링크:
https://www.acmicpc.net/problem/10988
문제 개요
"팰린드롬인지 확인하기" 문제는 주어진 단어가 팰린드롬인지를 확인하는 문제입니다. 팰린드롬이란 앞으로 읽을 때와 거꾸로 읽을 때 동일한 단어를 말합니다. 이 문제는 문자열을 다루는 기본적인 알고리즘을 이해하는 데 중점을 둡니다.
해결 방법
이 문제는 주어진 문자열과 그 문자열의 역순이 동일한지 비교하여 팰린드롬 여부를 판단합니다. C++의 reverse 함수를 사용하여 문자열의 역순을 쉽게 생성할 수 있습니다.
코드 구현
#include <iostream> #include <algorithm> using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); string str; // 입력받을 문자열 cin >> str; string revstr = str; // 원래 문자열의 복사본 reverse(revstr.begin(), revstr.end()); // 복사본을 역순으로 변경 // 원래 문자열과 역순 문자열을 비교 for (int i = 0; i < str.size(); i++) { if (str[i] != revstr[i]) { cout << 0; // 팰린드롬이 아닌 경우 return 0; } } cout << 1; // 팰린드롬인 경우 return 0; }
코드 설명
이 코드는 입력받은 문자열 str의 역순을 생성하여, 원본 문자열과 각 문자 위치별로 비교합니다. 하나라도 다른 문자가 있으면 0을 출력하고 프로그램을 종료합니다. 모든 문자가 일치하면 1을 출력하여 문자열이 팰린드롬임을 나타냅니다.
결론
"팰린드롬인지 확인하기" 문제는 문자열 처리 기법과 알고리즘을 활용하여 해결할 수 있으며, 팰린드롬 판별, 문자열 역순 생성 등 기본적인 문자열 연산을 이해하는 데 도움이 됩니다.
반응형다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드
받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이
감지되어도 모달 창이 표시되지 않습니다.)