문제 분류 수업 진도 대회 채점현황 순위 질문게시판
게임
스도쿠 타이핑 리듬 타자게임 타이핑 테트리스 타이핑 인베이더 타이핑 지뢰찾기 8192 공룡게임 타이핑 플래피버드 랭킹
로그인

3011 : 팰린드롬 판별기

•시간제한: 1.000 S •메모리제한: 256 MB •제출: 96 •통과: 61 •만든사람: suakii

3011 : 팰린드롬 판별기

시간 1.000s · 메모리 256MB · 제출 96 · 정답 61

문제 설명

'토마토', '기러기', '우영우'처럼 앞으로 읽어도 거꾸로 읽어도 똑같은 단어를 팰린드롬(Palindrome)이라고 합니다.

알파벳 소문자로만 이루어진 단어가 하나 주어집니다. 이 단어가 팰린드롬인지 아닌지 판별하는 프로그램을 작성하세요.



[제약 조건]
• $1 \le (\text{문자열의 길이}) \le 100$

입력 설명

첫째 줄에 문자열이 주어집니다.

출력 설명

팰린드롬이면 Yes를, 아니면 No를 출력하세요.

입력 예시
COPY
복사되었습니다!

level

출력 예시
COPY
복사되었습니다!

Yes

도움

[도움말]
문자열이 팰린드롬인지 판별할 때 유용한 다양한 방법들을 소개합니다.

1. 가장 쉬운 방법: 문자열 뒤집기 슬라이싱 (Python)
파이썬에서는 슬라이싱 스텝(step)에 -1을 주면 문자열 전체를 한 번에 거꾸로 뒤집을 수 있습니다.
원래 문자열과 뒤집은 문자열이 같은지 바로 비교하면 아주 간단히 해결됩니다!
word = input()

if word == word[::-1]:  # 뒤집은 문자열과 똑같은지 확인
    print("Yes")
else:
    print("No")

2. 인덱스로 양쪽 대칭 비교하기 (C / C++ / Python 공통)
문자열의 양 끝에서부터 가운데로 좁혀오면서 서로 마주 보는 글자가 같은지 확인할 수도 있습니다.
• 맨 앞($0$번)과 맨 뒤($N-1$번) 비교: word[0] == word[length - 1] (파이썬은 word[-1])
• $i$번째 글자와 대칭 위치 글자 비교: word[i] == word[length - 1 - i]
• 순회 중 단 하나라도 서로 다르면 팰린드롬이 아니므로 No가 됩니다.

3. 주의할 점 (출력 대소문자)
• 문제 출력 형식에 맞춰 첫 글자만 대문자인 Yes와 No로 정확히 출력해야 정답 처리됩니다. (YES, yes 등은 오답 처리)

출처/분류

NOTICE  —  BFStudy OJ 정보샘
애들아, 문제 많이 풀고 게임 잠깐 하는거지?
— 정보샘